Skip to content

Commit

Permalink
Merge branch 'airquality' of github.com:influxdata/community-template…
Browse files Browse the repository at this point in the history
…s into airquality
  • Loading branch information
kristinarobinson committed Jan 28, 2021
2 parents 2006e1c + 962ecc3 commit 465fc01
Show file tree
Hide file tree
Showing 90 changed files with 7,862 additions and 482 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@ jobs:

run: |
cd /tmp
wget https://dl.influxdata.com/influxdb/releases/influxdb_2.0.0-beta.16_linux_amd64.tar.gz
tar xvfz influxdb_2.0.0-beta.16_linux_amd64.tar.gz
sudo cp influxdb_2.0.0-beta.16_linux_amd64/{influx,influxd} /usr/local/bin/
wget https://dl.influxdata.com/platform/nightlies/influx_nightly_linux_amd64.tar.gz
tar xvfz influx_nightly_linux_amd64.tar.gz
sudo cp influx_nightly_linux_amd64/{influx,influxd} /usr/local/bin/
influxd --http-bind-address :8086 --reporting-disabled > /dev/null 2>&1 &
until curl -s http://localhost:8086/health; do sleep 1; done
influx setup --host http://localhost:8086 -f -b dummy -o influxdata -u ci_user -p password
Expand Down
26 changes: 13 additions & 13 deletions Example_readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,12 @@ List what resources your template provides in this section. That will allow user

**Example:**

- 1 Bucket: `Telegraf`, 7d retention
- 3 Labels: `InfluxDB1.x`,`Solution`,`Telegraf`
- 1 Telegraf Configuration
- 3 Checks: `Disk Usage Check`, `Host Deadman`, and `Memory Usage Check`
- 2 Dashboards: `InfluxDB 1.x` and `Telegraf`
- 3 Variables: `bucket`, `influxdb_host`, and `telegraf_host`
- 1 Bucket: `Telegraf`, 7d retention
- 3 Labels: `InfluxDB1.x`,`Solution`,`Telegraf`
- 1 Telegraf Configuration
- 3 Checks: `Disk Usage Check`, `Host Deadman`, and `Memory Usage Check`
- 2 Dashboards: `InfluxDB 1.x` and `Telegraf`
- 3 Variables: `bucket`, `influxdb_host`, and `telegraf_host`

## Setup Instructions

Expand All @@ -43,21 +43,21 @@ Describe any steps needed to finish setting up and running your template, includ

**Example:**

Telegraf Configuration requires the following environment variables
- `INFLUX_TOKEN` - The token with the permissions to read Telegraf configs and write data to the `telegraf` bucket. You can just use your operator token to get started.
- `INFLUX_ORG` - The name of your Organization
Telegraf Configuration requires the following environment variables
- `INFLUX_TOKEN` - The token with the permissions to read Telegraf configs and write data to the `telegraf` bucket. You can just use your operator token to get started.
- `INFLUX_ORG` - The name of your Organization

You **MUST** set these environment variables before running Telegraf using something similar to the following commands
- This can be found on the `Load Data` > `Tokens` page in your browser: `export INFLUX_TOKEN=TOKEN`
- Your Organization name can be found on the Settings page in your browser: `export INFLUX_ORG=my_org`
You **MUST** set these environment variables before running Telegraf using something similar to the following commands
- This can be found on the `Load Data` > `Tokens` page in your browser: `export INFLUX_TOKEN=TOKEN`
- Your Organization name can be found on the Settings page in your browser: `export INFLUX_ORG=my_org`

## Customizations

Show off the flexibility of your template by letting users know different ways they can use it other than the defaults you provide.

**Example:**

You can easily update the Telegraf configurations to point to a specific InfluxDB 1.x location by setting the options in the [InfluxDB Input](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/influxdb) or the [InfluxDB 2.0 Output](https://github.com/influxdata/telegraf/tree/master/plugins/outputs/influxdb_v2).
You can easily update the Telegraf configurations to point to a specific InfluxDB 1.x location by setting the options in the [InfluxDB Input](https://github.com/influxdata/telegraf/tree/master/plugins/inputs/influxdb) or the [InfluxDB 2.0 Output](https://github.com/influxdata/telegraf/tree/master/plugins/outputs/influxdb_v2).

## Contact

Expand Down
14 changes: 12 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,28 @@ Start by reading [how to use a template](docs/use_a_template.md), then check eac
| Template | Description | Author |
|----------------------|-------------|:------:|
| [Air Quality](airquality/) | Retrieve air quality statistics from the US EPA website | [Kristina Robinson](https://github.com/kristinarobinson) |
| [Algorithmia](algorithmia/) | Monitor machine learning model performance metrics | [@koverholt](https://github.com/koverholt) |
| [Apex Legends](apex_legends/) | Collect player metrics from the game Apex Legends | [@b3vis](https://github.com/b3vis) |
| [AWS Cloudwatch Monitoring](aws_cloudwatch/) | Monitor AWS EC2 and ELB | [bonitoo.io](.) |
| [Ceph Cluster](ceph/) | Monitor your Ceph Cluster with Prometheus metrics | [@bonitoo.io](https://github.com/bonitoo-io) |
| [Counter Strike: Global Offensive](csgo/) | Get stats about your game. Kills, Deaths and stats by weapon. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [Covid-19 in South America](covid19-southamerica/) | Current data and graphs covering Covid-19 cases and deaths in South America | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [Cribl LogStream](criblio_logstream/) | Monitor and visualize your metric data from Cribl LogStream. | [Clint Sharp](https://github.com/criblio) |
| [Currency Exchange Rates](currency_exchange_rates/) | Visualize and analyze currency exchange rates using Quandl. | Wojciech Kocjan |
| [Covid-19 in South America](InfluxDBv2_Covid19_SouthAmerica/) | Current data and graphs covering Covid-19 cases and deaths in South America | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [DigitalOcean Billing](do_billing/) | Get your balance, month consumption and month to date balance from your DigitalOcean account | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [Docker](docker/) | Monitor your running docker containers. | [@russorat](https://github.com/russorat) |
| [Downsampling](downsampling/) | Downsample common Telegraf metrics. | [@russorat](https://github.com/russorat) |
| [Endpoint Security State](endpoint-security-state/) | Watch endpoint authentication availability and certificate status | [Darin Fisher](https://github.com/darinfisher) |
| [Enviro+](enviro_plus/) | View the air quality readings from a Pimoroni Enviro+ particulate matter sensor. | Russ Savage |
| [Fail2Ban](fail2ban/) | Monitor your Fail2Ban instance on multiple hosts and services. | [bonitoo.io](.) |
| [Fireboard](fireboard/) | Monitor data collected by a Fireboard thermometer. | [Scott Anderson](https://github.com/sanderson) |
| [Fortnite](fortnite/) | Track and analyze Fortnite player performance. | [@abalone23](https://github.com/abalone23) |
| [GCP Monitoring](gcp_monitoring/) | Monitor Google Cloud Platform. | [bonitoo.io](.) |
| [Github](github/) | View information about your Github Repos. Forks, Issues, Stars and more. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [HAProxy](haproxy/) | Get metrics of your HAProxy instance. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [InfluxDB 1.x Monitor](monitoring_influxdb_1.x/) | Monitor your already running InfluxDB 1.x instance. | [@russorat](https://github.com/russorat) |
| [InfluxDB 2 OSS Metrics](influxdb2_oss_metrics/) | Monitor your InfluxDB 2 OSS instance using scrapers. | [@russorat](https://github.com/russorat) |
| [InfluxDB 2 Operational Monitoring](influxdb2_operational_monitoring/) | Monitor you tasks and cardinality on your already running InfluxDB 2 instance. | [@Anaisdg](https://github.com/Anaisdg) |
| [Island Pulse (Modbus)](modbus/) | Monitor Island Pulse energy gauge over Modbus | Ray Farias |
| [Jboss Wildfly](jboss_wildfly/) | View information your Jboss Wildfly Instance using Jolokia. Uptime, Heap Memory, Non Heap Memory, Memory Pool, etc | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [JMeter](apache_jmeter/) | This template provides Apache JMeter dashboard | [bonitoo.io](.) |
Expand All @@ -39,12 +46,15 @@ Start by reading [how to use a template](docs/use_a_template.md), then check eac
| [Linux System Monitor](linux_system/) | Monitor system resources on one or more Linux hosts. | [@russorat](https://github.com/russorat) |
| [Jenkins](jenkins/) | Monitor your Jenkins node and jobs. | Ray Farias |
| [Microsoft SQL Server](mssql/) | View information of SQL Server Instance. Uptime, Databases Activities, Read and Write times and more. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [MinIO](minio/) | Monitor MinIO instance. Uptime, CPU process time, Memory allocated, s3 total and current request, Storage used and available and more. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [MinIO](minio/) | Monitor MinIO instance. Uptime, CPU process time, Memory allocated, s3 total and current request, Storage used and available and more. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [MongoDB](mongodb/) | View information of MongoDB Server. Uptime, Connectios, Queries, Documents Operations and more. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [MySQL / MariaDB](mysql_mariadb/) | View information of MySQL Instance. Uptime, Current Queries, Active Threads, Connections, Traffic and more. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [Network Interface Monitor](network_interface_performance/) | Monitor network interfaces on one or more hosts. | [@russorat](https://github.com/russorat) |
| [Nextcloud](nextcloud/) | Show stats about your Nextcloud Instance. | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [Postgres Monitor](postgresql/) | Monitor Postgres Server. CPU, Deadlocks, Data and more | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
| [Raspberry Pi System Monitor](raspberry-pi/) | System overview monitoring for your Raspberry Pi with Raspbian. | [@bonitoo.io](https://github.com/bonitoo-io) |
| [Redis Monitor](redis/) | Monitor your Redis server. | [@russorat](https://github.com/russorat) |
| [Sensu Go](sensu_go/) | Monitor the performance of your Sensu Go observability tool. | [@nikkictl](https://github.com/nikkictl) |
| [sFlow Traffic Monitor](sflow/) | Monitor your sFlow traffic. | [@russorat](https://github.com/russorat) |
| [SNMP Monitoring](snmp/) | Dashboards showing metrics provided via SNMP protocol | [bonitoo.io](.) |
| [Speedtest Dashboard](speedtest/) | This template will show you information about the speed of your Internet connection using speedtest-cli | [Ignacio Van Droogenbroeck](https://github.com/xe-nvdk) |
Expand Down
253 changes: 253 additions & 0 deletions algorithmia/algorithmia.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,253 @@
apiVersion: influxdata.com/v2alpha1
kind: Bucket
metadata:
name: unruffled-almeida-c0c001
spec:
name: insights
---
apiVersion: influxdata.com/v2alpha1
kind: Dashboard
metadata:
name: mystifying-booth-40c001
spec:
charts:
- axes:
- base: "10"
name: x
scale: linear
- base: "2"
name: y
scale: linear
colors:
- hex: '#00C9FF'
name: laser
type: text
- hex: '#DC4E58'
name: fire
type: text
value: 0.7
decimalPlaces: 2
height: 4
kind: Single_Stat_Plus_Line
name: Risk Score
position: overlaid
queries:
- query: |-
from(bucket: "insights")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "kafka_consumer")
|> filter(fn: (r) => r["_field"] == "risk_score")
|> group()
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
width: 4
xCol: _time
yCol: _value
- colors:
- hex: '#32B08C'
name: viridian
type: min
- hex: '#DC4E58'
name: fire
type: max
value: 1
decimalPlaces: 2
height: 4
kind: Gauge
name: Risk Score
queries:
- query: |-
from(bucket: "insights")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "kafka_consumer")
|> filter(fn: (r) => r["_field"] == "risk_score")
|> group()
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
width: 4
yPos: 4
- axes:
- base: "10"
name: x
scale: linear
- base: "10"
name: y
scale: linear
colors:
- hex: '#00C9FF'
name: laser
type: text
- hex: '#DC4E58'
name: fire
type: text
value: 0.8
decimalPlaces: 2
height: 4
kind: Single_Stat_Plus_Line
name: Approvals
position: overlaid
queries:
- query: |-
from(bucket: "insights")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "kafka_consumer")
|> filter(fn: (r) => r["_field"] == "approved")
|> group()
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
width: 4
xCol: _time
xPos: 4
yCol: _value
- axes:
- name: x
- domain:
- 0
- 1
name: y
binSize: 20
colors:
- hex: '#000004'
- hex: '#110a30'
- hex: '#320a5e'
- hex: '#57106e'
- hex: '#781c6d'
- hex: '#9a2865'
- hex: '#bc3754'
- hex: '#d84c3e'
- hex: '#ed6925'
- hex: '#f98e09'
- hex: '#fbb61a'
- hex: '#f4df53'
height: 4
kind: Heatmap
name: Approved
queries:
- query: |-
from(bucket: "insights")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "kafka_consumer")
|> filter(fn: (r) => r["_field"] == "approved")
|> group()
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
width: 4
xCol: _time
xPos: 4
yCol: _value
yPos: 4
- axes:
- base: "10"
name: x
scale: linear
- base: "10"
name: y
scale: linear
colors:
- hex: '#00C9FF'
name: laser
type: text
decimalPlaces: 0
height: 4
kind: Single_Stat_Plus_Line
name: Algorithm Duration
position: overlaid
queries:
- query: |-
from(bucket: "insights")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "kafka_consumer")
|> filter(fn: (r) => r["_field"] == "duration_milliseconds")
|> group()
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
suffix: ' ms'
width: 4
xCol: _time
xPos: 8
yCol: _value
- colors:
- hex: '#00C9FF'
name: laser
type: min
- hex: '#9394FF'
name: comet
type: max
value: 100
decimalPlaces: 0
height: 4
kind: Gauge
name: Algorithm Duration
queries:
- query: |-
from(bucket: "insights")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "kafka_consumer")
|> filter(fn: (r) => r["_field"] == "duration_milliseconds")
|> group()
|> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
|> yield(name: "mean")
suffix: ' ms'
width: 4
xPos: 8
yPos: 4
description: Monitor machine learning model performance metrics
name: Algorithmia - ML Model Performance Metrics
---
apiVersion: influxdata.com/v2alpha1
kind: Telegraf
metadata:
name: algorithmia-telegraf
spec:
name: Algorithmia
config: |
[agent]
interval = "10s"
round_interval = true
metric_batch_size = 1000
metric_buffer_limit = 10000
collection_jitter = "0s"
flush_interval = "10s"
flush_jitter = "0s"
precision = ""
hostname = ""
omit_hostname = false
###############################################################################
# OUTPUT PLUGINS #
###############################################################################
[[outputs.influxdb_v2]]
urls = ["$INFLUX_HOST"]
token = "$INFLUX_TOKEN"
organization = "$INFLUX_ORG"
bucket = "insights"
###############################################################################
# PROCESSOR PLUGINS #
###############################################################################
###############################################################################
# AGGREGATOR PLUGINS #
###############################################################################
###############################################################################
# INPUT PLUGINS #
###############################################################################
[[inputs.kafka_consumer]]
brokers = ["$KAFKA_BROKER"]
topics = ["$KAFKA_TOPIC"]
data_format = "json"
tag_keys = [
"algorithm_name",
"algorithm_owner",
"algorithm_version"
]
json_string_fields = [
"session_id",
"request_id"
]
name_override = "algorithmia"
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 465fc01

Please sign in to comment.