The dbWatch installation consists of three components:
- dbWatch Monitor/Client serves as the front-end GUI
- dbWatch Server is the core business logic and central hub of the system
- dbWatch Framework contains stored objects in the registered database instances.
The dbWatch Monitor is the GUI front end for interacting with one or several dbWatch Servers. The Monitor is an installed application.
The dbWatch Server is the program responsible for all communication with the configured database instances. It is responsible for triggering the monitoring procedures (if monitoring is enabled), generating reports, and performing the actual administration tasks. The dbWatch Server can also communicate with 3rd party products through extensions. In more advanced environments, the dbWatch Server can be configured to have one or more roles configured. The roles available depend on the license and features enabled.
dbWatch Server roles
When configured in more advanced environments, role separation is possible. There are several potential roles and a dbWatch Server can have one or more of them:
This role is for connecting to and monitoring database instances. A configuration of multiple dbWatch Server nodes can have one or more nodes with the role of instance hub to monitor multiple security zones, aid scalability, or provide fail-over assistance.
This role is typically the first to be configured, as the domain CA is the node that handles the configuration of other nodes and the security.
This node is assigned for storage, typically for USL (Unified Scripting Language). This node will hold the actual data if a script needs to temporarily or permanently store data.
This node is used to route secure communication between dbWatch Server nodes. Typical usage is when a dbWatch node can only make outbound connections, and you need a common connection point for the GUI client.
This node is used for USL to perform scripts interacting with the underlying host. It is used for integrations and USL scripting but can also work as an agent to allow for host monitoring.
This node provides web dashboards and data exports populated with data from FDL (Farm Data Language) queries across the environment.
This node provides updates for the automatic update functionality for other nodes in the environment. May have internet access to download updates automatically or provide manually downloaded updates for the other dbWatch nodes.
There are four dbWatch modules that can be enabled for each database instance, the following briefly describes their impact on the instance;
When you enable monitoring for a particular instance a dbWatch Engine is installed on the instance. The Engine is a set of database objects (Procedures, Tables & Functions) written in the native language related to that instance. This code provides the interface used by the dbWatch Server when triggered by the dbWatch Tasks and Alerts. It is also used by Tasks and Alerts to report back to the dbWatch Server.
All engine codes are open for end users to view and are included with the installation of the dbWatch Server. The dbWatch Server maintains a pool of up to 4 sessions that perform the monitoring of each instance.
The dbWatch Management module consists of a set of specifications that define the management interface your user has for a particular instance. A specification can optionally define a set of “helper” objects on the database instance. This will usually entail several tables used for temporary storage and functions that perform codes that are used often. If the selected management specification contains such objects, they are installed on the instance the first time the management interface is used and this then is Management.
The dbWatch Server has a pool of sessions for each instance that will grow on demand, based on the user commands issued in the Management interface. This will hardly ever grow beyond 1 or 2 sessions and when the user is inactive for a while (30 seconds default) sessions are terminated.
The dbWatch SQL Worksheet allows you to perform custom SQL statements on any database instance. It has no associated database objects. The dbWatch Server has a pool of sessions for each instance that will grow on demand based on the SQL statements issued in the SQL Worksheet. This will hardly ever grow beyond 1 or 2 sessions. When the user is inactive for a while (30 seconds default) sessions are terminated.
The dbWatch Reports allows you to generate reports based on any data on any database instance. It has no associated database objects.
The dbWatch Server will create a session for each (global) report it generates and terminates it afterward. On a normal system, this will result in no more than a handful of sessions being generated per day.