Librato Integration

🚧

Librato is now AppOptics

The documentation can be accessed here although key features remain the same.

212

Librato Metrics is a cloud based service for storing and visualizing time-series data. Librato provides a simple Web API, as well as language bindings and integration with collection agents such as statsd and collectd to make it very easy to store metric data in Librato data store.

Librato can create alerts in OpsGenie when configured thresholds for metrics are exceeded.

What does OpsGenie offer Librato users?

OpsGenie has a webhook integration with Librato. Using the integration, Librato sends incidents to OpsGenie API, with detailed information. OpsGenie acts as a dispatcher for Librato alerts, determining the right people to notify based on on-call schedules, using email, text messages (SMS), phone calls and iOS & Android push notifications, and escalating alerts until the alert is acknowledged or closed.

Functionality of the integration

  • When an alert is created in Librato, an alert is also created in OpsGenie automatically through the integration.
  • When an alert is closed in Librato, the alert in OpsGenie is also closed.

Add Librato integration in OpsGenie

  1. Please create an OpsGenie account if you haven't done already
  2. Go to OpsGenie Librato Integration page,
  3. Specify who should be notified for Librato alerts using the "Teams" field. Auto-complete suggestions will be provided as you type.
  4. Copy the integration API Key by clicking on the copy button or selecting. You'll be using this in Librato configuration.
  5. Click on "Save Integration".
989

Configuration on Librato

  1. In Librato, go to Account Settings page.
  2. Select Services tab.
  3. Click on OpsGenie from the list of Available Services. Click the (+) next to Configured Services to add a new service destination or click on an existing one to edit.
  4. Paste the API key you copied into "API key" field.
  5. Click "create service"
  6. You can also specify comma-separated teams, tags and recipients for the OpsGenie alerts.
1132

You can also refer to Librato's support document for this integration.

Sample Payload

{
  "alert": {
    "id": 4892664,
    "name": "test alert",
    "runbook_url": "runbook.com",
    "version": 2,
    "description": "test alert"
  },
  "trigger_time": 1424793470,
  "conditions": [
    {
      "id": 611876,
      "type": "above",
      "threshold": 1,
      "duration": 60
    },
    {
      "id": 61187,
      "type": "average",
      "threshold": 2,
      "duration": 40
    }
  ],
  "violations": {
    "test-source": [
      {
        "metric": "cpu",
        "value": 43,
        "recorded_at": 1424793470,
        "condition_violated": 611876
      },
      {
        "metric": "metric1",
        "value": 51,
        "recorded_at": 1427793470,
        "condition_violated": 611876
      }
    ],
    "source" :[
      {
        "metric": "metric2",
        "value": 3,
        "recorded_at": 1624793470,
        "condition_violated": 611876
      }
    ]
  },

  "metric": {
    "name": "disk_read",
    "type": "gauge"
  },
  "measurement": {
    "value": 50,
    "source": "test-source"
  },
  "measurements": [
    {
      "value": 50,
      "source": "test-source"
    }
  ]
}