Set theme jekyll-theme-architect and migrate Page Generator content
This commit is contained in:
8
_config.yml
Normal file
8
_config.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
title: Cachet-monitor
|
||||||
|
description: Distributed monitoring plugin for CachetHQ
|
||||||
|
google_analytics:
|
||||||
|
show_downloads: true
|
||||||
|
theme: jekyll-theme-architect
|
||||||
|
|
||||||
|
gems:
|
||||||
|
- jekyll-mentions
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.2 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 26 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 9.2 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 30 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.2 KiB |
167
index.html
167
index.html
@@ -1,167 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset='utf-8'>
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
|
||||||
<link href='https://fonts.googleapis.com/css?family=Architects+Daughter' rel='stylesheet' type='text/css'>
|
|
||||||
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
|
|
||||||
<link rel="stylesheet" type="text/css" href="stylesheets/github-light.css" media="screen">
|
|
||||||
<link rel="stylesheet" type="text/css" href="stylesheets/print.css" media="print">
|
|
||||||
|
|
||||||
<!--[if lt IE 9]>
|
|
||||||
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
|
||||||
<![endif]-->
|
|
||||||
|
|
||||||
<title>Cachet-monitor by CastawayLabs</title>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<header>
|
|
||||||
<div class="inner">
|
|
||||||
<h1>Cachet-monitor</h1>
|
|
||||||
<h2>Distributed monitoring plugin for CachetHQ</h2>
|
|
||||||
<a href="https://github.com/CastawayLabs/cachet-monitor" class="button"><small>View project on</small> GitHub</a>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<div id="content-wrapper">
|
|
||||||
<div class="inner clearfix">
|
|
||||||
<section id="main-content">
|
|
||||||
<p><img src="https://castawaylabs.github.io/cachet-monitor/screenshot.png" alt="screenshot"></p>
|
|
||||||
|
|
||||||
<h2>
|
|
||||||
<a id="features" class="anchor" href="#features" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Features</h2>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>[x] Creates & Resolves Incidents</li>
|
|
||||||
<li>[x] Posts monitor lag to cachet graphs</li>
|
|
||||||
<li>[x] Updates Component to Partial Outage</li>
|
|
||||||
<li>[x] Updates Component to Major Outage if already in Partial Outage (works well with distributed monitoring)</li>
|
|
||||||
<li>[x] Can be run on multiple servers and geo regions</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2>
|
|
||||||
<a id="configuration" class="anchor" href="#configuration" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Configuration</h2>
|
|
||||||
|
|
||||||
<pre><code>{
|
|
||||||
// URL for the API. Note: Must end with /api/v1
|
|
||||||
"api_url": "https://<cachet domain>/api/v1",
|
|
||||||
// Your API token for Cachet
|
|
||||||
"api_token": "<cachet api token>",
|
|
||||||
// optional, false default, set if your certificate is self-signed/untrusted
|
|
||||||
"insecure_api": false,
|
|
||||||
"monitors": [{
|
|
||||||
// required, friendly name for your monitor
|
|
||||||
"name": "Name of your monitor",
|
|
||||||
// required, url to probe
|
|
||||||
"url": "Ping URL",
|
|
||||||
// optional, http method (defaults GET)
|
|
||||||
"method": "get",
|
|
||||||
// self-signed ssl certificate
|
|
||||||
"strict_tls": true,
|
|
||||||
// seconds between checks
|
|
||||||
"interval": 10,
|
|
||||||
// post lag to cachet metric (graph)
|
|
||||||
// note either metric ID or component ID are required
|
|
||||||
"metric_id": <metric id>,
|
|
||||||
// post incidents to this component
|
|
||||||
"component_id": <component id>,
|
|
||||||
// If % of downtime is over this threshold, open an incident
|
|
||||||
"threshold": 80,
|
|
||||||
// optional, expected status code (either status code or body must be supplied)
|
|
||||||
"expected_status_code": 200,
|
|
||||||
// optional, regular expression to match body content
|
|
||||||
"expected_body": "P.*NG"
|
|
||||||
}],
|
|
||||||
// optional, system name to identify bot (uses hostname by default)
|
|
||||||
"system_name": "",
|
|
||||||
// optional, defaults to stdout
|
|
||||||
"log_path": ""
|
|
||||||
}
|
|
||||||
</code></pre>
|
|
||||||
|
|
||||||
<h2>
|
|
||||||
<a id="installation" class="anchor" href="#installation" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Installation</h2>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Download binary from <a href="https://github.com/CastawayLabs/cachet-monitor/releases">release page</a>
|
|
||||||
</li>
|
|
||||||
<li>Create your configuration (<a href="https://raw.githubusercontent.com/CastawayLabs/cachet-monitor/master/example.config.json">example</a>)</li>
|
|
||||||
<li><code>cachet-monitor -c /etc/cachet-monitor.config.json</code></li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>pro tip: run in background using <code>nohup cachet-monitor 2>&1 > /var/log/cachet-monitor.log &</code></p>
|
|
||||||
|
|
||||||
<pre><code>Usage of cachet-monitor:
|
|
||||||
-c="/etc/cachet-monitor.config.json": Config path
|
|
||||||
-log="": Log path
|
|
||||||
-name="": System Name
|
|
||||||
</code></pre>
|
|
||||||
|
|
||||||
<h2>
|
|
||||||
<a id="environment-variables" class="anchor" href="#environment-variables" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Environment variables</h2>
|
|
||||||
|
|
||||||
<table>
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>Name</th>
|
|
||||||
<th>Example Value</th>
|
|
||||||
<th>Description</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>CACHET_API</td>
|
|
||||||
<td><a href="http://demo.cachethq.io/api/v1">http://demo.cachethq.io/api/v1</a></td>
|
|
||||||
<td>URL endpoint for cachet api</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>CACHET_TOKEN</td>
|
|
||||||
<td>APIToken123</td>
|
|
||||||
<td>API Authentication token</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>CACHET_DEV</td>
|
|
||||||
<td>1</td>
|
|
||||||
<td>Strips logging</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<h2>
|
|
||||||
<a id="vision-and-goals" class="anchor" href="#vision-and-goals" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Vision and goals</h2>
|
|
||||||
|
|
||||||
<p>We made this tool because we felt the need to have our own monitoring software (leveraging on Cachet).
|
|
||||||
The idea is a stateless program which collects data and pushes it to a central cachet instance.</p>
|
|
||||||
|
|
||||||
<p>This gives us power to have an army of geographically distributed loggers and reveal issues in both latency & downtime on client websites.</p>
|
|
||||||
|
|
||||||
<h2>
|
|
||||||
<a id="package-usage" class="anchor" href="#package-usage" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Package usage</h2>
|
|
||||||
|
|
||||||
<p>When using <code>cachet-monitor</code> as a package in another program, you should follow what <code>cli/main.go</code> does. It is important to call <code>ValidateConfiguration</code> on <code>CachetMonitor</code> and all the monitors inside.</p>
|
|
||||||
|
|
||||||
<p><a href="https://godoc.org/github.com/CastawayLabs/cachet-monitor">API Documentation</a></p>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<aside id="sidebar">
|
|
||||||
<a href="https://github.com/CastawayLabs/cachet-monitor/zipball/master" class="button">
|
|
||||||
<small>Download</small>
|
|
||||||
.zip file
|
|
||||||
</a>
|
|
||||||
<a href="https://github.com/CastawayLabs/cachet-monitor/tarball/master" class="button">
|
|
||||||
<small>Download</small>
|
|
||||||
.tar.gz file
|
|
||||||
</a>
|
|
||||||
|
|
||||||
<p class="repo-owner"><a href="https://github.com/CastawayLabs/cachet-monitor"></a> is maintained by <a href="https://github.com/CastawayLabs">CastawayLabs</a>.</p>
|
|
||||||
|
|
||||||
<p>This page was generated by <a href="https://pages.github.com">GitHub Pages</a> using the Architect theme by <a href="https://twitter.com/jasonlong">Jason Long</a>.</p>
|
|
||||||
</aside>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
91
index.md
Normal file
91
index.md
Normal file
@@ -0,0 +1,91 @@
|
|||||||
|

|
||||||
|
|
||||||
|
Features
|
||||||
|
--------
|
||||||
|
|
||||||
|
- [x] Creates & Resolves Incidents
|
||||||
|
- [x] Posts monitor lag to cachet graphs
|
||||||
|
- [x] Updates Component to Partial Outage
|
||||||
|
- [x] Updates Component to Major Outage if already in Partial Outage (works well with distributed monitoring)
|
||||||
|
- [x] Can be run on multiple servers and geo regions
|
||||||
|
|
||||||
|
Configuration
|
||||||
|
-------------
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
// URL for the API. Note: Must end with /api/v1
|
||||||
|
"api_url": "https://<cachet domain>/api/v1",
|
||||||
|
// Your API token for Cachet
|
||||||
|
"api_token": "<cachet api token>",
|
||||||
|
// optional, false default, set if your certificate is self-signed/untrusted
|
||||||
|
"insecure_api": false,
|
||||||
|
"monitors": [{
|
||||||
|
// required, friendly name for your monitor
|
||||||
|
"name": "Name of your monitor",
|
||||||
|
// required, url to probe
|
||||||
|
"url": "Ping URL",
|
||||||
|
// optional, http method (defaults GET)
|
||||||
|
"method": "get",
|
||||||
|
// self-signed ssl certificate
|
||||||
|
"strict_tls": true,
|
||||||
|
// seconds between checks
|
||||||
|
"interval": 10,
|
||||||
|
// post lag to cachet metric (graph)
|
||||||
|
// note either metric ID or component ID are required
|
||||||
|
"metric_id": <metric id>,
|
||||||
|
// post incidents to this component
|
||||||
|
"component_id": <component id>,
|
||||||
|
// If % of downtime is over this threshold, open an incident
|
||||||
|
"threshold": 80,
|
||||||
|
// optional, expected status code (either status code or body must be supplied)
|
||||||
|
"expected_status_code": 200,
|
||||||
|
// optional, regular expression to match body content
|
||||||
|
"expected_body": "P.*NG"
|
||||||
|
}],
|
||||||
|
// optional, system name to identify bot (uses hostname by default)
|
||||||
|
"system_name": "",
|
||||||
|
// optional, defaults to stdout
|
||||||
|
"log_path": ""
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Installation
|
||||||
|
------------
|
||||||
|
|
||||||
|
1. Download binary from [release page](https://github.com/CastawayLabs/cachet-monitor/releases)
|
||||||
|
2. Create your configuration ([example](https://raw.githubusercontent.com/CastawayLabs/cachet-monitor/master/example.config.json))
|
||||||
|
3. `cachet-monitor -c /etc/cachet-monitor.config.json`
|
||||||
|
|
||||||
|
pro tip: run in background using `nohup cachet-monitor 2>&1 > /var/log/cachet-monitor.log &`
|
||||||
|
|
||||||
|
```
|
||||||
|
Usage of cachet-monitor:
|
||||||
|
-c="/etc/cachet-monitor.config.json": Config path
|
||||||
|
-log="": Log path
|
||||||
|
-name="": System Name
|
||||||
|
```
|
||||||
|
|
||||||
|
Environment variables
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
| Name | Example Value | Description |
|
||||||
|
| ------------ | ------------------------------ | --------------------------- |
|
||||||
|
| CACHET_API | http://demo.cachethq.io/api/v1 | URL endpoint for cachet api |
|
||||||
|
| CACHET_TOKEN | APIToken123 | API Authentication token |
|
||||||
|
| CACHET_DEV | 1 | Strips logging |
|
||||||
|
|
||||||
|
Vision and goals
|
||||||
|
----------------
|
||||||
|
|
||||||
|
We made this tool because we felt the need to have our own monitoring software (leveraging on Cachet).
|
||||||
|
The idea is a stateless program which collects data and pushes it to a central cachet instance.
|
||||||
|
|
||||||
|
This gives us power to have an army of geographically distributed loggers and reveal issues in both latency & downtime on client websites.
|
||||||
|
|
||||||
|
Package usage
|
||||||
|
-------------
|
||||||
|
|
||||||
|
When using `cachet-monitor` as a package in another program, you should follow what `cli/main.go` does. It is important to call `ValidateConfiguration` on `CachetMonitor` and all the monitors inside.
|
||||||
|
|
||||||
|
[API Documentation](https://godoc.org/github.com/CastawayLabs/cachet-monitor)
|
||||||
@@ -1 +0,0 @@
|
|||||||
console.log('This would be the main JS file.');
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Cachet-monitor",
|
|
||||||
"tagline": "Distributed monitoring plugin for CachetHQ",
|
|
||||||
"body": "\r\n\r\nFeatures\r\n--------\r\n\r\n- [x] Creates & Resolves Incidents\r\n- [x] Posts monitor lag to cachet graphs\r\n- [x] Updates Component to Partial Outage\r\n- [x] Updates Component to Major Outage if already in Partial Outage (works well with distributed monitoring)\r\n- [x] Can be run on multiple servers and geo regions\r\n\r\nConfiguration\r\n-------------\r\n\r\n```\r\n{\r\n // URL for the API. Note: Must end with /api/v1\r\n \"api_url\": \"https://<cachet domain>/api/v1\",\r\n // Your API token for Cachet\r\n \"api_token\": \"<cachet api token>\",\r\n // optional, false default, set if your certificate is self-signed/untrusted\r\n \"insecure_api\": false,\r\n \"monitors\": [{\r\n // required, friendly name for your monitor\r\n \"name\": \"Name of your monitor\",\r\n // required, url to probe\r\n \"url\": \"Ping URL\",\r\n // optional, http method (defaults GET)\r\n \"method\": \"get\",\r\n // self-signed ssl certificate\r\n \"strict_tls\": true,\r\n // seconds between checks\r\n \"interval\": 10,\r\n // post lag to cachet metric (graph)\r\n // note either metric ID or component ID are required\r\n \"metric_id\": <metric id>,\r\n // post incidents to this component\r\n \"component_id\": <component id>,\r\n // If % of downtime is over this threshold, open an incident\r\n \"threshold\": 80,\r\n // optional, expected status code (either status code or body must be supplied)\r\n \"expected_status_code\": 200,\r\n // optional, regular expression to match body content\r\n \"expected_body\": \"P.*NG\"\r\n }],\r\n // optional, system name to identify bot (uses hostname by default)\r\n \"system_name\": \"\",\r\n // optional, defaults to stdout\r\n \"log_path\": \"\"\r\n}\r\n```\r\n\r\nInstallation\r\n------------\r\n\r\n1. Download binary from [release page](https://github.com/CastawayLabs/cachet-monitor/releases)\r\n2. Create your configuration ([example](https://raw.githubusercontent.com/CastawayLabs/cachet-monitor/master/example.config.json))\r\n3. `cachet-monitor -c /etc/cachet-monitor.config.json`\r\n\r\npro tip: run in background using `nohup cachet-monitor 2>&1 > /var/log/cachet-monitor.log &`\r\n\r\n```\r\nUsage of cachet-monitor:\r\n -c=\"/etc/cachet-monitor.config.json\": Config path\r\n -log=\"\": Log path\r\n -name=\"\": System Name\r\n```\r\n\r\nEnvironment variables\r\n---------------------\r\n\r\n| Name | Example Value | Description |\r\n| ------------ | ------------------------------ | --------------------------- |\r\n| CACHET_API | http://demo.cachethq.io/api/v1 | URL endpoint for cachet api |\r\n| CACHET_TOKEN | APIToken123 | API Authentication token |\r\n| CACHET_DEV | 1 | Strips logging |\r\n\r\nVision and goals\r\n----------------\r\n\r\nWe made this tool because we felt the need to have our own monitoring software (leveraging on Cachet).\r\nThe idea is a stateless program which collects data and pushes it to a central cachet instance.\r\n\r\nThis gives us power to have an army of geographically distributed loggers and reveal issues in both latency & downtime on client websites.\r\n\r\nPackage usage\r\n-------------\r\n\r\nWhen using `cachet-monitor` as a package in another program, you should follow what `cli/main.go` does. It is important to call `ValidateConfiguration` on `CachetMonitor` and all the monitors inside.\r\n\r\n[API Documentation](https://godoc.org/github.com/CastawayLabs/cachet-monitor)\r\n",
|
|
||||||
"google": "",
|
|
||||||
"note": "Don't delete this file! It's used internally to help with page regeneration."
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user