Skip to content

Monitoring and Logging

Service Management

Airlock installs itself as a system service. The service can be controlled using the commands:

sudo systemctl stop airlock
sudo systemctl start airlock
sudo systemctl restart airlock
sudo systemctl status airlock

Airlock is installed in the /opt/airlock directory. This directory contains the Airlock binaries, configuration files, and supporting files.

Metrics

Airlock collects metrics while running to provide insights into its operation and the text being processed. The metrics collected include a count of the documents processed by Airlock, counts of the types of sensitive information identified per type, and the entity confidence values of entities extracted by non-deterministic natural language processing methods. These metrics can be reported via JMX, and to external services Prometheus, Amazon CloudWatch, and Datadog.

Reporting Metrics to Prometheus

To enable Airlock metric reporting to Prometheus modify Airlock's Settings to enable the Prometheus metrics. When enabled, the metrics HTTP endpoint will be http://airlock-ip:9100/metrics.

Enable scraping of Airlock's metrics in Prometheus' settings:

global:
  scrape_interval: 10s

scrape_configs:
- job_name: airlock
  static_configs:
  - targets: ['10.0.2.104:9100']

You may need to make port 9100 accessible to Prometheus. For example, if you launch Airlock in AWS you will need to modify Airlock's security group to permit inbound network traffic on port 9100 to Prometheus.

Reporting Metrics to Amazon CloudWatch

To enable Airlock metric reporting to Amazon CloudWatch modify Airlock's Settings to set the AWS properties. Metrics will be published to CloudWatch every 60 seconds, by default, when enabled.

The AWS IAM user or role being used should have PutMetricData permissions:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:PutMetricData"
            ],
            "Resource": "*"
        }
    ]
}

The metrics will be published to the Amazon CloudWatch namespace provided in Airlock's settings. Amazon CloudWatch can then be used to visualize the metrics, set performance alarms, or perform other integrations with AWS services.

Reporting Metrics to Datadog

Metrics will be published to Datadog every 60 seconds when enabled.

Metrics published to Datadog will have a airlock prefix.

Reporting Metrics to JMX

Metrics in JMX can be viewed using visualvm or similar tool.

Metrics Collected and Reported

The listing below shows an example of the metrics Airlock collects and writes to standard out while running. The metrics reported to supported services such as JMX, Amazon CloudWatch and Datadog will contain the same metrics but may be represented or visualized differently between the services.

The metrics collected include:

  • A cumulative count of each type of sensitive information across all contexts and documents.
  • The total count of documents processed.

These metrics will be reset when Airlock is stopped and restarted.

Logging

Airlock's log file can be viewed using the command journalctl -u airlock. This log should be the first place checked for more information on Airlock's status.

The log level can be set using the logging.level.root property in Airlock's Settings.

Airlock's log file may contain sensitive information. It is possible that through the normal use of Airlock, sensitive information may be written to the log file.