Skip to content

Commit

Permalink
Added basic documentation.
Browse files Browse the repository at this point in the history
  • Loading branch information
dennisstritzke committed Jan 28, 2018
1 parent 188d138 commit 4eb2777
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# IPsec Exporter [![CircleCI](https://circleci.com/gh/dennisstritzke/ipsec_exporter/tree/master.svg?style=svg)](https://circleci.com/gh/dennisstritzke/ipsec_exporter/tree/master)
Prometheus exporter for ipsec metrics, written in Go.

## Functionality
The IPsec exporter is determining the state of the configured IPsec tunnels via the following procedure.
1. Starting up the `ipsec.conf` is read. All tunnels configured via the `conn` keyword are observed.
1. If the `/metrics` endpoint is queried, the exporter calls `ipsec status <tunnel name>` for each configured
connection. The output is parsed.
* If the output contains `ESTABLISHED`, we assume that only the connection is up.
* If the output contains `INSTALLED`, we assume that the tunnel is up and running.
* If the output contains `no match`, we assume that the connection is down.

## Value Definition
| Metric | Value | Description |
|--------|-------|-------------|
| ipsec_status | 0 | The connection is established and tunnel is installed. The tunnel is up and running. |
| ipsec_status | 1 | The connection is established, but the tunnel is not up. |
| ipsec_status | 2 | The tunnel is down. |
| ipsec_status | 3 | The tunnel is in an unknown state. |

0 comments on commit 4eb2777

Please sign in to comment.