How do I set the timezone in GroundWork?
You can set a timezone for various purposes in GroundWork. Some parts are automatic.
How timezones are used in GroundWork
The timezone that GroundWork operates in is largely independent of the server time. Most servers are set to UTC in modern data centers and cloud deployments anyway, so we have engineered several ways to make the timezone more intuitive and obvious. There is a need to explain this in some detail, however, so it's clear what you are looking at.
Container timezone is set to server time
Usually, this makes no difference to the operation of GroundWork - it will work fine whatever the timezone you set the server to. The containers will report their timezone to be the same as the server time, with the exception of the cron container.
You can always see the server time by typing:
on the command line of your GroundWork server. Or, for a summary of the timezones for all the containers:
for i in $(docker-compose ps | cut -f 1 -d " " | cut -f 2 -d "_") ; do echo $i ; docker-compose exec $i date ; done ; grep GW8_TZ gw8.env
Setting timezone for cron Jobs
When you install GroundWork, you are asked for a timezone for the cron jobs GroundWork uses for several things:
- Archiving data into the archive database and report database
- Running the network discovery (NeDI) tasks
- Setting and managing downtimes
- Running the BSM services
In fact, cron is central to the operation of GroundWork, and the timezone you run cron jobs in should be set so that the minimum number of users will be on the system at the time the archival and report generation is run (01:00 to around 03:00 in the timezone you set).
You can see (and set) the cron timezone after installation as well. See Editing crontab.
Most of the time, the time you will see in the user interface of GroundWork Monitor is the browser time. It's set from the timezone your workstation uses, so it should be obvious that the time shown is local to you. There are exceptions, however.
Nagios Plugin Output
If you are looking at the Status Summary, or at the old Nagios CGIs, the "Status Text" portion of the data may contain timestamp information. This is going to be in the timezone of the system where the plugin was run, either the Nagios container or the GDMA system that originated the output. Not all plugins output timestamp data, but some do and you should be aware that the timestamp in this instance isn't translated to browser time. The rest of the fields generally are browser time.
The Network Discovery part of GroundWork has an independent time zone setting. It defaults to the cron time, but can be set in the initial screen, Configuration > Network Discovery > User > Profile: