Processes & Jobs

From zzat
Jump to: navigation, search

Similar to the architecture of the Oracle database itself, zztat uses individual processes to perform different tasks. This keeps code simple, more linear and maintainable, and helps to provide a more stable framework. This also opens the door to add new functionality a lot easier compared to having a single huge script. In zztat, a process is essentially an Oracle scheduler program, which is then executed by one or more Oracle scheduler jobs.

Many of the processes can operate in two different core operational modes: PUSH & PULL (as of zztat version 1.0.4 only PUSH is implemented).

Jobs are grouped into different categories based on their function:

Target Processes.png

Illustration I shows the different types of processes which can be active on a typical zztat target database installation.

  • SNAPSHOT triggers metric snapshots to collect data
  • REPLICATE replicates the snapshot data to the repository database
  • GAUGE executes the gauges
  • REACT fires reactions
  • PING regularly informs the repository of the target database status
  • PURGE ensures the scheduler job logs are regularly archived and cleaned
  • MANAGER performs various data cleanup tasks
  • STATE_CHECK monitors processes and the framework status
  • SYNC handles communication, both locally on the target and with the repository
  • EYE is the interface to the zztat eye (coming in zztat patchset 1).

Illustration 1: Target database processes