Skip to content

Latest commit

 

History

History
120 lines (112 loc) · 2.49 KB

ConfigurationExamples.md

File metadata and controls

120 lines (112 loc) · 2.49 KB

Configuration file examples

{
  "Name": "Team1",
  "AlarmNameSuffix": "Team1",
  "Targets": [
    { "Url": "https://events.pagerduty.com/integration/123456789asdfaxbkj/enqueue" }
  ],
  "ReportTargets" : [
    { "Email": "[email protected]" }
  ],
    "DynamoDb": {
      "Tables": [
        { "Name": "table1" },
        { "Name": "table2" }
      ]
    },
  "Sqs": {
    "Queues": [
      { "Name": "queue1" },
      { "Name": "queue2" }
   ]
  }
}
{
  "Name": "COG2",
  "AlarmNameSuffix": "cog2",
  "Threshold": 0.50,
  "Targets": [
    { "Url": "https://events.pagerduty.com/integration/123456789asdfaxbkj/enqueue" },
    { "Email": "[email protected]" }
  ],
  "DynamoDb": {
    "Tables": [
      { "Name": "table3"},
      { "Name": "table5", "Threshold": 0.75 },
      { "Pattern": "^je-some-prefix-", "MonitorWrites" : false,  "Threshold": 0.50 }
    ]
  }
}
{
  "Name": "SysOps",
  "AlarmNameSuffix": "SysOps",
  "Targets": [
    { "Email": "[email protected]" }
  ],
  "IsCatchAll": true,
  "DynamoDb": {
    "Threshold": 0.75,
    "Tables": [
      { "Pattern": ".*" }
    ],
    "ExcludeTablesPrefixedWith": [
      "je-search"
    ]
  }
}
{
  "Name": "SqsOnlyDemo",
  "Targets": [
    { "Email": "[email protected]" },
    { "Url": "http://farley.com" }
  ],
  "AlarmNameSuffix": "SqsOnlyTest",
  "Sqs": {
    "Queues": [
      {
        "Pattern": "anyqueue",
        "LengthThreshold": 100,
        "OldestMessageThreshold": 600,
        "Errors": {
          "LengthThreshold": 10,
          "Monitored": true
        }
      }
    ]
  }
}

Regex

Patterns are regular expressions, so we can use Regular Expression syntax to exclude certain resources from one general rule and catch them with a second specific rule, in order to, for example, apply a different "OldestMessageThreshold" to a delay queue.

{
    "Name": "QueueFilters",
    "AlarmNameSuffix": "qf",
    "Targets": [
      { "Url": "http://farley.com" }
    ],
    "Sqs": {
        "LengthThreshold": 5,
        "Errors": {
            "LengthThreshold": 1
        },
        "Queues": [
            {
                "Pattern": "-myapp-(?!(delayqueue|ignoredqueue))",
                "OldestMessageThreshold": 60
            },
            {
                "Pattern": "-myapp-delayqueue-",
                "OldestMessageThreshold": 360
            }
        ]
    }
}