This check monitors FoundationDB through the Datadog Agent. Aside from checking that the FoundationDB cluster is healthy, it also collects numerous metrics and, optionally, FoundationDB transaction logs.
Both the check and metrics apply to the FoundationDB cluster as a whole, and should only be installed on one host. The host doesn't need to be one that is running FoundationDB, but just one with access to it.
The FoundationDB check is included in the Datadog Agent package, but requires the FoundationDB client to be installed.
To configure this check for an Agent running on a host:
-
To start collecting your FoundationDB metrics, edit the
foundationdb.d/conf.yaml
file in theconf.d/
folder at the root of your Agent's configuration directory. See the sample foundationdb.d/conf.yaml for all available configuration options. -
The cluster to check is determined by searching for a cluster file in the default location. If the cluster file is located elsewhere, set the
cluster_file
property. Only one cluster can be monitored per check instance. -
If the cluster is configured to use TLS, further properties should be set in the configuration. These properties follow the names of the TLS related options given to
fdbcli
to connect to such a cluster.
FoundationDB writes XML logs by default, however, Datadog integrations expect JSON logs. Thus, a configuration change needs to be made to FoundationDB.
-
Locate your
foundationdb.conf
file. Under thefdbserver
section, add or change the keytrace_format
to have the valuejson
. Also, make note of thelogdir
.[fdbserver] ... logdir = /var/log/foundationdb trace_format = json
-
Restart the FoundationDB server so the changes take effect. Verify that logs in the
logdir
are written in JSON. -
Ensure that log collection is enabled in your
datadog.yaml
file:logs_enabled: true
-
In the
foundationdb.d/conf.yaml
file, uncomment thelogs
section and set the path to the one in your FoundationDB configuration file, appending*.json
.logs: - type: file path: /var/log/foundationdb/*.json service: foundationdb source: foundationdb
-
Make sure the Datadog Agent has the privileges required to list the directory and read its files.
-
Restart the Datadog Agent.
For containerized environments, see the Autodiscovery Integration Templates for guidance on applying the parameters below.
Parameter | Value |
---|---|
<INTEGRATION_NAME> |
foundationdb |
<INIT_CONFIG> |
blank or {} |
<INSTANCE_CONFIG> |
{} |
Collecting logs is disabled by default in the Datadog Agent. To enable it, see Kubernetes log collection.
Parameter | Value |
---|---|
<LOG_CONFIG> |
{"source": "foundationdb", "service": "<SERVICE_NAME>"} |
Run the Agent's status subcommand and look for foundationdb
under the Checks section.
See metadata.csv for a list of metrics provided by this check.
See service_checks.json for a list of service checks provided by this integration.
The FoundationDB check does not include any events.
Need help? Contact Datadog support.