All Projects → grafana → synthetic-monitoring-app

grafana / synthetic-monitoring-app

Licence: AGPL-3.0 license
Synthetic Monitoring frontend application

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to synthetic-monitoring-app

tracker
Track your activities!
Stars: ✭ 14 (-82.5%)
Mutual labels:  grafana
grafana-pandas-datasource
Grafana Pandas Datasource - using Python for generating timeseries-, table-data and annotations
Stars: ✭ 38 (-52.5%)
Mutual labels:  grafana
blogr-pve
Puppet provisioning of HA failover/cluster environment implemented in Proxmox Virtual Environment and Linux boxes.
Stars: ✭ 28 (-65%)
Mutual labels:  grafana
ruby-grafana-reporter
Reporting Service for Grafana
Stars: ✭ 42 (-47.5%)
Mutual labels:  grafana
bobbycar
IoT Transportation demo using Red Hat OpenShift and Middleware technologies
Stars: ✭ 33 (-58.75%)
Mutual labels:  grafana
VWsFriend
VW WeConnect visualization and control
Stars: ✭ 130 (+62.5%)
Mutual labels:  grafana
iot-edge-offline-dashboarding
Azure IoT Edge offline dashboarding/reporting sample. Guidance and sample dashboards
Stars: ✭ 31 (-61.25%)
Mutual labels:  grafana
chartjs-plugin-datasource-prometheus
Chart.js plugin for Prometheus data loading
Stars: ✭ 77 (-3.75%)
Mutual labels:  grafana
openeew-dashboard
Dashboards for monitoring devices, events, users, data and more. Built on Carbon and React.
Stars: ✭ 22 (-72.5%)
Mutual labels:  grafana
idrac snmp-grafana
SNMP Based Dashboard to Monitor Dell Hosts via iDRAC
Stars: ✭ 88 (+10%)
Mutual labels:  grafana
CSVServer
Simple node-based CSV adapter for Grafana Simple JSON data source
Stars: ✭ 28 (-65%)
Mutual labels:  grafana
docker-iot-dashboard
A complete IoT server for LoRaWAN IoT projects: node-red + influxdb + grafana + ssl + let's encrypt using docker-compose.
Stars: ✭ 79 (-1.25%)
Mutual labels:  grafana
vagrant-vault-consul-docker-monitoring
No description or website provided.
Stars: ✭ 20 (-75%)
Mutual labels:  grafana
Synology-NAS-monitoring
influxDB, Grafana, snmp and telegraf
Stars: ✭ 140 (+75%)
Mutual labels:  grafana
grafana-influx-admin
InfluxDB admin panels for grafana
Stars: ✭ 34 (-57.5%)
Mutual labels:  grafana
fastify-metrics
📊 Fastify plugin that integrates metrics collection and dispatch to statsd
Stars: ✭ 62 (-22.5%)
Mutual labels:  grafana
influx4mqtt
Insert incoming MQTT values into InfluxDB. Follows mqtt-smarthome architecture.
Stars: ✭ 34 (-57.5%)
Mutual labels:  grafana
burrow-kafka-dashboard
Kubernetes Kafka Overview, Burrow consumer lag stats, Kafka disk usage
Stars: ✭ 37 (-53.75%)
Mutual labels:  grafana
Sofar LSW3
Get MODBUS data from Sofar (K-TLX) inverter through LSW-3 or LSE module
Stars: ✭ 57 (-28.75%)
Mutual labels:  grafana
yearn-exporter
Realtime and historical Yearn metrics
Stars: ✭ 80 (+0%)
Mutual labels:  grafana

Synthetic monitoring application

Synthetic Monitoring is a blackbox monitoring solution provided as part of Grafana Cloud. Synthetic Monitoring provides users with insights into how their applications and services are behaving from an external point of view. Users can define checks to continually test remote targets from 1 or more probe locations around the world to assess the availability, performance and correctness of the services. As each check runs, metrics and logs are collected and published to the user's Grafana Cloud service. Metrics are published to Grafana Cloud Prometheus and logs are published to Grafana Cloud Loki.

Synthetic monitoring is the successor to the original worldping application. The refreshed Synthetic Monitoring product focuses on reducing complexity and taking advantage of Grafana Cloud capabilities.

Check Types

Users can define HTTP/HTTPS, DNS, TCP and ICMP Ping checks to monitor their remote targets. Internally, the Synthetic Monitoring solution uses the Prometheus Blackbox exporter for executing the checks and collecting metrics and logs. When creating a check, users are able to customize the settings and validation rules supported by the Blackbox exporter.

Probe Locations

For each check, users can select 1 or more 'public' probe locations distributed throughout the world to run tests from. Additionally, users can run their own 'private' probe locations by downloading and deploying the Synthetic Monitoring Agent.

Configuration

Synthetic Monitoring requires a Grafana Cloud account, and is installed by default in Grafana Cloud stacks. A local Grafana instance can be configured to connect to Synthetic Monitoring via a provisioning file:

apiVersion: 1

apps:
  - type: grafana-synthetic-monitoring-app
    name: grafana-synthetic-monitoring-app
    disabled: false
    jsonData:
      apiHost: <synthetic monitoring api url for your grafana cloud stack>
      stackId: <instance ID of your hosted grafana>
      logs:
        grafanaName: <name of an existing Loki datasource pointing to the Grafana Cloud Loki instance>
        hostedId: <Grafana Cloud Loki instance ID>
      metrics:
        grafanaName: <name of an existing Prometheus datasource pointing to the Grafana Cloud Prometheus instance>
        hostedId: <Grafana Cloud Prometheus instance ID>
    secureJsonData:
      publisherToken: <metric publisher token from grafana.com>

Configuration details:

  • apiHost expects Synthetic Monitoring API URL, see more details here

  • stackId expects an integer and can be found using gcom /instances/<orgSlug>, or by visiting https://grafana.com/orgs/<orgSlug>/stacks and clicking the details button on stack you are connecting to. The id will be in the URL.

  • The logs and metrics section are instructing the plugin which datasources it needs to use.

    • The grafanaName needs to exactly match the names specified in your datasource provisioning
    • The hostedId expects an integer and is the same value as the basicAuthUser in your datasource provisioning. The value can also be found from the details page of loki or prometheus at https://grafana.com/orgs/<orgSlug>/stacks.
  • publisherToken needs to be a grafana.com api key with a MetricsPublisher role. This is what the probes use to publish metrics to your cloud stack.

Note: you can add a provisioning block per org to provision the plugin for multiple orgs. You can provide different values for each org block and connect to a different cloud stack per org.

Prerequisites:

  1. A datasource pointed at a Prometheus instance hosted in Grafana Cloud
  2. A datasource pointed at a Loki instance hosted in Grafana Cloud

Note: The Prometheus and Loki instances must be part of the same Cloud stack

The required datasources can be added via provisioning. The information needed can be copied from Prometheus and Loki datasources found in the datasources tab of a Cloud hosted Grafana instance:

apiVersion: 1

datasources:
  - name: <datasource name>
    type: loki
    access: proxy
    url: https://logs-prod-us-central1.grafana.net
    basicAuth: true
    basicAuthUser: <Grafana Cloud Loki instance ID>
    jsonData:
      maxLines: 1000
    secureJsonData:
      basicAuthPassword: <viewer token from grafana.com>
    version: 1

  - name: <datasource name>
    type: prometheus
    access: proxy
    url: https://prometheus-us-central1.grafana.net/api/prom
    basicAuth: true
    basicAuthUser: <Grafana Cloud Prometheus instance ID>
    jsonData:
      timeInterval: 1s
    secureJsonData:
      basicAuthPassword: <viewer token from grafana.com>
    version: 1

To start the using app:

  1. Navigate to Synthetic Monitoring via the sidebar
  2. Click the Get Started button. This will initialize the app.

During the Initialization process, the Synthetic Monitoring backend will:

  1. Validate the Publisher API key provided in the provisioning file.
  2. Ensure the account has active Grafana Cloud Prometheus and Grafana Cloud Loki services
  3. The dashboards included with the App will then be imported.
  4. Finally, the Synthentic Monitoring Backend will be notified that the service is ready.

Users can then create checks to monitor their remote targets. Metrics and logs will flow into the selected Cloud stack.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].