johnksilverwood
Level 5

Flexera Inventory Agent Scanning Schedule Tracking

Jump to solution

Hello -

Does anyone have a method to determine a rough timeframe when the Flexera Agent inventory runs it scan (without having to access the servers one by one)? 

We are testing the inventory agent, and the schedule seems to be randomized, according to this document.

Our metrics toolset needs a more fine granularity to track to minute-by-minute level. 

Is there a way to log when the process executes? Maybe some sort of check for ndtask on linux and ndtrack on windows? 

Thanks in advance! 

Labels (2)
1 Solution

Correct.  Each day that the agent runs, it will randomly run within that 8 hour window, so every day it would run at a different time.

View solution in original post

9 Replies
kclausen
Level 14 Flexeran
Level 14 Flexeran

There is a Global inventory schedule that is set in the User Interface that applies to all installed agent.  If you make a change to the Global Schedule, then a new Policy is generated that gets downloaded to all agents through the Beacon.  There are a couple things to keep in mind when you set a specific Time of Day for the agent to run:


1) The Time that you set in the User Interface applies to the Local Clock Time on each computer where the agent is installed.  So if you have a server in Chicago and you set the Time of Day in the User Interface to run at 11:00PM, then the agent will initiate a scan at 11PM Central Time.


2) To prevent all installed agents to run an inventory at the exact same time, you can specify a "randomization" parameter, also in time units.  Let's say that you set this parameter to 3 hours, and the Time of Day to be 11PM.  What this means then is that the agent will initiate the Inventory Scan somewhere between 11PM and 2AM the next day.

I am attaching a Screen Image of the above scenario from Flexera One ITAM.  If you have FNMS On-Premises, it will work the same way.

Thanks, I was aware of that. We have a larger randomization schedule. E.g. in our UAT, it is start at 6pm and commence with 8 hours. 

I assume then there is no real way to track when it kicks off within that 8 hour period? 

0 Kudos

Correct.  Each day that the agent runs, it will randomly run within that 8 hour window, so every day it would run at a different time.

Got it. We've narrowed the window in our UAT since it's so few devices so at least we know a smaller time frame. Thanks!

0 Kudos
mfranz
Level 16 Champion
Level 16 Champion

The "Commence within" option will define the time window, but agents will choose a random time within  that window themselves. Purpose is to spread the load over time and not have every machine report at the same time.

image.png

Softline Group is Europe's leading independent expert in Software Asset Management.

Sorry to be dense, but for this setting in particular "Do not rerun after success for 1 day"  (that's how I have it in UAT).

Does this mean - the agent will:

  1. wait 24 hours and run the very next day
  2. Wait 24+ hours and run the day after next

The reason I ask is I am trying to track when the agent skips its inventory because of high CPU (low priority mode). I want to know when i test a high-load server if i can track the log to see it purposefully skipping inventory and show that to my forensics teams. 

I have a machine that skipped a full day (so ran Tuesday, then skipped Wednesday) from the schedule.log file:

"[20220209T183301] Not running "Generate Inventory" - event succeeded last time and will not run again before [20220210T024454]"

I assume this means it's skipping because it's being told to wait 1 day, correct?  I could have sworn I saw other machines that inventoried in consecutive days and didn't skip. But maybe i'm losing it, lol. 

Thanks ! 

0 Kudos

If I'm following your thinking correctly, the behavior is closer to your option 1 ("wait 24 hours and run the very next day") than option 2 ("Wait 24+ hours and run the day after next").

The "do not run after success" setting does not change anything about when inventory gathering events are triggered. Instead, this setting controls what happens when a trigger for gathering inventory fires: it will check whether a previous event to gather inventory was successfully completed within the specified time period. If so, inventory gathering will be aborted and nothing will happen until the next event trigger (when the check will be performed again).

In relation to about high CPU load: I think you may be referring to the way that the inventory gathering process runs (by default) with a low CPU priority. High CPU usage by other processes does not cause events to gather inventory to be skipped as you've described. It just means that the inventory gathering processing is likely to get fewer CPU cycles than it would on a lightly loaded computer, and so the process may take longer to run than it otherwise would while other higher priority processes consume CPU cycles.

(Did my reply solve the question? Click "ACCEPT AS SOLUTION" to help others find answers faster. Liked something? Click "KUDO". Anything expressed here is my own view and not necessarily that of my employer, Flexera.)

The "24 hours" setting is based on the clock time, not from one whole day to the next.  For example, if the agent runs a successful scan at 2AM on one day, then it will run a scheduled inventory the very next day, as long as the inventory kicks off anytime after 2AM.  On the other hand, if the agent runs a successful scan at 10PM on one day, and then the next day the schedule kicks off before 10PM, it will not run the next day and would likely "skip" the next day and run the day after that.

johnksilverwood
Level 5

Thanks guys, very helpful! I had no idea that the CPU priority just means it is slower to complete vs. skipping entirely. 

0 Kudos