- SignServer Introduction
- SignServer Installation
- Worker Setup
- Configure Client Certificate Authentication and Authorization
- Certificate Renewals Using Peer Systems
- Setting up Key Wrapping
- Setting up One-time Keys
- Setting up OpenPGP Signer
- Client HTTP Interface
- Client WS Interface
- Client CLI
- Admin WS Interface
- Legacy Interfaces
- Apache HTTP Server as Reverse Proxy
- Stresstest CLI
- P11NG CLI
- Deploy-time Configuration
- Common Configuration
- Common Properties
- Appx Signer
- Appx CMS Signer
- CMS Signer
- Debian Dpkg-sig Signer
- Extended CMS Signer
- Extended Time Stamp Signer
- JArchive Signer
- JArchive CMS Signer
- MRTD Signer
- MRTD SOD Signer
- MS Authenticode Time Stamp Signer
- Master List Signer
- MS Authenticode Signer
- MS Authenticode CMS Signer
- ODF Signer
- OOXML Signer
- OpenPGP Signer
- OpenPGPPlain Signer
- PDF Signer
- Plain Signer
- Time Stamp Signer
- XAdES Signer
- XML Signer
- SignServer Document Validators
- SignServer Dispatchers
- SignServer Validation Service Framework
- SignServer Timed Services
- Other Workers
- Alias Selectors
- SignServer Authentication and Authorization
- Status Repository
- Health Check
- SignServer TimeMonitor Application
SignServer User Interfaces
- Administration CLI
- Administration GUI
- Main Page
- Workers Activation Page
- Workers Deactivation Page
- Workers Enable Page
- Workers Disable Page
- Workers Key Generation Page
- Workers Test Key Page
- Workers CSR Page
- Workers Install Certificates Page
- Workers Renewal Page
- Workers Removal Page
- Workers Reload from Database Page
- Workers Export Page
- Workers Add Page
- Worker Page
- Global Configuration Page
- Administrators Page
- Audit Log Page
- Archive Page
- Database CLI
- Peer Systems
- Client-Side Hashing
- Key Wrapping
- Developer Reference
- SignServer Release Information
Code Signing How-to Guides
- Code Signing Technical How-to
- Authenticode Code Signing Technical How-to
- How To Integrate Jenkins with SignServer for Automated Code Signing
ENTERPRISE This is a SignServer Enterprise feature.
Fully qualified class name: org.signserver.module.timemonitormanager.TimeMonitorManager.
Similar to the StatusPropertiesWorker, the TimeMonitorManager also supports setting status properties in the status repository. Additionally, the TimeMonitorManager supports dynamic configuration of the TimeMonitor and also gives a complete view of the state of the TimeMonitor.
All worker properties starting with either "TIMEMONITOR." or "TIMESERVER." are sent to the TimeMonitor if it asks for it. For information on available properties, refer to the SignServer TimeMonitor Manual.
|x.VALUE||Where x is a status property: Sets the value of the property|
|x.EXPIRATION||Where x is a status property: Sets the expiration time for x (x.VALUE must also be specified)|
|x.UPDATE||The time when the property was written|
Detailed information about the state of the TimeMonitor is available in the getstatus output of the TimeMonitorManager:
- Time monitor: Indicates if the application is detected to be 'Running', 'Disabled', 'Not running?' or 'Unavailabe'. The state is determined by if the manager has seen an update from the TimeMonitor before the status properties are starting to expire.
- Last update: The last time the TimeMonitor contacted the manager.
- Current time: Current time of the server.
- Time state: The last time state from the TimeMonitor.
- Report state: The last report state from the TimeMonitor.
- Leap state: The last leap state from the TimeMonitor.
- Configuration: Either 'out of sync' or 'up to date' depending on if the current configuration has been read by the TimeMonitor or not. After changing a property in the TimeMonitorManager it is normal that the configuration is marked as 'out of sync' until the TimeMonitor fetches it.
- Status properties values: Prints the current value and possibly the expiration time for the TIMESOURCE0_INSYNC and LEAPSECOND status properties.
- Timings: Prints the current time values from the TimeMonitor.
- Configuration: Prints the configuration values in the manager (not necessarily read by the TimeMonitor yet).
- Last TimeMonitor log entries: Prints the last log entries obtained from the last update from the TimeMonitor.
The following displays an example status output:
Status of Worker with ID 300 (TimeMonitorManager) is: Worker status : Active Time monitor : Running Last update : 2017-08-26 11:43:39,176 Current time : 2017-08-26 11:43:39,580 Time state : INSYNC Report state : REPORTED Leap state : NONE Configuration : Up to date Status Repository values: TIMESOURCE0_INSYNC: true LEAPSECOND: NONE Timings: NTP server time offset: 0 ms NTP server query time: 507 ms NTP leap status query time: 8 ms Report time: 7 ms Total required run time: 522 ms Configuration: NTP server hosts: 192.168.30.25 NTP query samples: 2 NTP query timeout: 200 ms Max accepted offset: 997 ms Warn offset: 500 ms Status expire time: 900 ms Leap status expire time: 60000 ms Warn run time: 800 ms Minimum run time: 550 ms Last TimeMonitor log entries: 2014-08-26 11:36:29,253 INFO Started 2014-08-26 11:36:29,287 INFO State changed to: UNKNOWN,REPORTED,UNKNOWN 2014-08-26 11:36:44,255 INFO Config changed to: 1ccdf46b 2014-08-26 11:36:44,782 INFO Time back in calibration: offset abs(0) max accepted offset 997 2014-08-26 11:36:44,793 INFO State changed to: INSYNC,REPORTED,NONE