Agree completely. I do have a few Session Relevance queries that may help. I use these from time to time in the Web Reports QNA page.
Assuming you’ve downloaded & activated the “BigFix Client - Audit - Universal” from bigfix.me in one of your custom sites, punch in the Site Name containing the analysis in the queries below:
First, find the average Evaluation Cycle across your entire deployment, only including those computers with the default values for _BESClient_Resource_WorkIdle
and _BESClient_Resource_SeelpIdle
, and only those computers that have reported in within the last day (so some computer that’s been removed or taken offline doesn’t skew results when you’re comparing before/after making changes). You’d want to capture this before making changes and compare it later to see whether your improvements are having any effect
Q: means of (values of (results (item 0 of it, elements of item 1 of it)) of (bes properties whose (name of site of source analysis of it = "MY_CUSTOM_SITE" and name of source analysis of it = "BigFix Client - Audit - Universal" and name of it = "Client - Evaluation Cycle (Average) - Universal"), set of bes computers whose (now - last report time of it < 1 * day AND not exists client settings whose ((name of it = "_BESClient_Resource_WorkIdle" and value of it != "10") OR (name of it = "_BESClient_Resource_SleepIdle" and value of it != "480")) of it) ) as floating point)
A: 29.42
Based on the definition of the 'Cleint - Evaluation Cycle (Average) - Universal" property, I think this indicates an average of 29 minutes for my clients to get through a full cycle.
Next, find the content with longest-running evaluation times (on average) across your deployment. Step through each of the Properties - “Client - Evaluations Slower than 1 Hour - Universal
”, “Client - Evaluations Slower than 15 Minutes - Universal
”, and “Client - Evaluations Slower than 1 Minute - Universal
” to see which things to prioritize
q: (multiplicity of it, it) of unique values of following texts of firsts ": " of values of (results (item 0 of it, elements of item 1 of it)) of (bes properties whose (name of site of source analysis of it = "MY_CUSTOM_SITE" and name of source analysis of it = "BigFix Client - Audit - Universal" and name of it = "Client - Evaluations Slower than 1 Hour - Universal"), set of bes computers whose (now - last report time of it < 1 * day AND (not exists client settings whose ((name of it = "_BESClient_Resource_WorkIdle" and value of it != "10") OR (name of it = "_BESClient_Resource_SleepIdle" and value of it != "480")) of it)) )
q: (multiplicity of it, it) of unique values of following texts of firsts ": " of values of (results (item 0 of it, elements of item 1 of it)) of (bes properties whose (name of site of source analysis of it = "Test" and name of source analysis of it = "BigFix Client - Audit - Universal" and name of it = "Client - Evaluations Slower than 15 Minutes - Universal"), set of bes computers whose (now - last report time of it < 1 * day AND (not exists client settings whose ((name of it = "_BESClient_Resource_WorkIdle" and value of it != "10") OR (name of it = "_BESClient_Resource_SleepIdle" and value of it != "480")) of it)) )
A: 1, CustomSite_Test.254:Background Evaluation
q: (multiplicity of it, it) of unique values of following texts of firsts ": " of values of (results (item 0 of it, elements of item 1 of it)) of (bes properties whose (name of site of source analysis of it = "MY_CUSTOM_SITE" and name of source analysis of it = "BigFix Client - Audit - Universal" and name of it = "Client - Evaluations Slower than 1 Minute - Universal"), set of bes computers whose (now - last report time of it < 1 * day AND (not exists client settings whose ((name of it = "_BESClient_Resource_WorkIdle" and value of it != "10") OR (name of it = "_BESClient_Resource_SleepIdle" and value of it != "480")) of it)) )
A: 1, CustomSite_Test.254:Background Evaluation
A: 1, CustomSite_Test.378:Evaluate Property 58
My lab is actually pretty good in this regard. Checking that last query, I only have 1 computer reporting two evaluations that take longer than one minute. The first result, a ‘Background Evaluation’ indicates it is the Relevance of the Fixlet, Task, Baseline, or Analysis with ID 254 in the Custom Site named ‘Test’. The second, “Evaluate Property 58”, indicates it is an Analysis Property in the Custom Site named ‘Test’, Analysis ID 378, and the 58th property of that Analysis.
Knowing that this Fixlet and this Analysis are what I would want to improve, deactivate, or evaluate less frequently, I can then query some details to determine why they are slow -
q: name of fixlet whose (id of it = 254) of all bes sites whose (name of it = "Test")
A: TROUBLESHOOTING: Kill processes locking __Download folders
q: (name of source analysis of it | "Global", name of it, source evaluation period of it, definition of it) of property 58 of fixlet whose (id of it = 378 ) of all bes sites whose (name of it = "Test")
A: BES Client Info - Universal, Bad Cache Files?, 7 days, items 0 of (name of it, sha1 of it) whose(item 0 of it != item 1 of it) of files of folders of folders "__Global\__Cache" of ( (if (exists properties whose(it as string starts with "data folder of " AND it as string contains "client")) then (data folder of client) else NULL)|(folder "/var/opt/BESClient/__BESData")|(folder "/Library/Application Support/BigFix/BES Agent/__BESData")|(folder "__BESData" of parent folder of client) )
Interesting that the “BES Client Info - Universal” is itself one of the slow evaluations. Looking at the Relevance for that property, I can see why it would be so - it performs a sha1 hash of every file in the cached downloads folder on the client. But, this slow evaluation has already been taken into account - this property only evaluates once a week, and I’m ok with a slow evaluation that only happens weekly.
Hope this helps !