...
- Grouper daemon has a component called Grouper Loader that can automatically provision Grouper memberships from external SQL sources
- Grouper daemon is a Java Quartz standalone command line application, launched from GSH: gsh -loader
- This daemon is required for all deployments, even if you are not using it to provision Grouper memberships from external SQL sources
- There is a daemon to:
- Disable expired memberships or to enable memberships which are enabled in the future
- Delete old audit and notification logs (configured in grouper-loader.properties)
- Massage the notification logs so they have a sequential index number
- Validate Grouper Rules and mark invalid ones as invalid. (v2.0)
- Notification consumers (callbacks) can be registered as a daemon. Grouper will keep track of which change log number they have successfully processed so the daemons can maintain state across Grouper Loader restarts
- The Grouper Loader keeps database logs in the grouper_loader_log table. These are periodically cleaned out based on configuration
- There is a daily report that can be emailed out to Grouper admin which details the state of the registry and the status of all daemon jobs from the last day
- The PSP changelog provisioning can be enabled as a daemon process (v2.1)
In v2.3+, the daemon is pre-configured to use a database to store job schedules instead of storing them locally in memory.
- By default, the Grouper database is used. These are the grouper_QZ_* tables.
- You can run the daemon on multiple machines and jobs will be spread among them all automatically. Be sure to keep your loader configuration (grouper-loader.properties) the same on all machines.
You can also use the daemon to schedule any custom jobs that you may have. To do so, add the following configuration in grouper-loader.properties:
Code Block ################################ ## Other jobs ## ## Configure other jobs. ## "jobName" is the name of your job. ## Class must implement org.quartz.Job. ## Priority is optional ################################ # otherJob.jobName.class = # otherJob.jobName.quartzCron = # otherJob.jobName.priority =
- In Grouper v2.4+, all daemon jobs are visible in the Grouper UI. You can also see their associated logs from the grouper_loader_log table in the UI.
...