{"id":19500255,"url":"https://github.com/rea1shane/monitor","last_synced_at":"2026-05-05T01:40:31.269Z","repository":{"id":173528843,"uuid":"650059225","full_name":"rea1shane/monitor","owner":"rea1shane","description":"Blueprint for Prometheus-based monitoring system.","archived":false,"fork":false,"pushed_at":"2024-06-19T03:41:33.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-08T10:11:22.872Z","etag":null,"topics":["alertmanager","blackbox-exporter","docker","docker-compose","grafana","node-exporter","prometheus","pushgateway"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rea1shane.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-06T08:46:22.000Z","updated_at":"2024-06-19T03:41:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"c0a15a8e-d1b9-4fed-9fc7-4e480c06d6b5","html_url":"https://github.com/rea1shane/monitor","commit_stats":null,"previous_names":["rea1shane/docker-monitor"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rea1shane%2Fmonitor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rea1shane%2Fmonitor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rea1shane%2Fmonitor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rea1shane%2Fmonitor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rea1shane","download_url":"https://codeload.github.com/rea1shane/monitor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240748088,"owners_count":19851207,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alertmanager","blackbox-exporter","docker","docker-compose","grafana","node-exporter","prometheus","pushgateway"],"created_at":"2024-11-10T22:08:01.014Z","updated_at":"2026-05-05T01:40:26.223Z","avatar_url":"https://github.com/rea1shane.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Monitor\n\nBlueprint for Prometheus-based monitoring system. The following components are included:\n\n- [Prometheus - The Prometheus monitoring system and time series database.](https://github.com/prometheus/prometheus)\n- [Pushgateway - Push acceptor for ephemeral and batch jobs.](https://github.com/prometheus/pushgateway)\n- [Blackbox exporter - Blackbox prober exporter.](https://github.com/prometheus/blackbox_exporter)\n- [Grafana - The open and composable observability and data visualization platform.](https://github.com/grafana/grafana)\n- [Alertmanager - Prometheus Alertmanager.](https://github.com/prometheus/alertmanager)\n- [Node exporter - Exporter for machine metrics.](https://github.com/prometheus/node_exporter)\n\n## Usage\n\n### Preparation\n\n1. Create workspace:\n\n   ```shell\n   # First, specify a path\n   # e.g.\n   export MONITOR_WORKSPACE=~/tmp/monitor\n\n   # Then, create dirs\n   mkdir -p $MONITOR_WORKSPACE/prometheus/\n   mkdir -p $MONITOR_WORKSPACE/alertmanager/\n   mkdir -p $MONITOR_WORKSPACE/blackbox_exporter/\n   mkdir -p $MONITOR_WORKSPACE/grafana/\n   ```\n\n1. Download configuration templates:\n\n   ```shell\n   wget https://raw.githubusercontent.com/prometheus/prometheus/main/documentation/examples/prometheus.yml -O $MONITOR_WORKSPACE/prometheus/prometheus.yml\n   wget https://raw.githubusercontent.com/prometheus/alertmanager/main/examples/ha/alertmanager.yml -O $MONITOR_WORKSPACE/alertmanager/alertmanager.yml\n   wget https://raw.githubusercontent.com/prometheus/blackbox_exporter/master/blackbox.yml -O $MONITOR_WORKSPACE/blackbox_exporter/blackbox.yml\n   wget https://raw.githubusercontent.com/grafana/grafana/main/conf/sample.ini -O $MONITOR_WORKSPACE/grafana/grafana.ini\n   ```\n\n1. Edit `$MONITOR_WORKSPACE/prometheus/prometheus.yml`:\n\n   ```yaml\n   alerting:\n     alertmanagers:\n       - static_configs:\n           - targets:\n               - alertmanager:9093\n   ```\n\n   ```yaml\n   scrape_configs:\n     - job_name: \"file_ds\"\n       file_sd_configs:\n         - refresh_interval: 5m\n           files:\n             - /etc/prometheus/targets.json\n   ```\n\n1. (Optional) Load rules in the [rules](https://github.com/rea1shane/monitor/tree/main/rules) folder:\n\n   1. Edit `docker-compose.yaml`:\n\n      ```yaml\n      services:\n        prometheus:\n          volumes:\n            - ./rules:/etc/prometheus/rules # Add this line\n      ```\n\n   1. Edit `$MONITOR_WORKSPACE/prometheus/prometheus.yml`, make Prometheus load rules:\n\n      ```yaml\n      rule_files:\n        - /etc/prometheus/rules/*.yml\n        - /etc/prometheus/rules/*.yaml\n      ```\n\n1. (Optional) Custom configuration files. Edit following files if you want:\n\n   - `$MONITOR_WORKSPACE/prometheus/prometheus.yml`\n   - `$MONITOR_WORKSPACE/alertmanager/alertmanager.yml`\n   - `$MONITOR_WORKSPACE/blackbox_exporter/blackbox.yml`\n   - `$MONITOR_WORKSPACE/grafana/grafana.ini`\n\n### Run\n\nJust run:\n\n```shell\ndocker-compose up\n```\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e If you are in a shell environment without the `MONITOR_WORKSPACE` variable, you need to re-export it first.\n\u003e\n\u003e ```shell\n\u003e # Set the same path as in the preparation session.\n\u003e export MONITOR_WORKSPACE=~/tmp/monitor\n\u003e ```\n\n### Dashboards\n\nHere are some shared dashboards:\n\n- [Prometheus 2.0 Overview | Grafana Labs](https://grafana.com/grafana/dashboards/3662-prometheus-2-0-overview/)\n- [Blackbox Exporter (HTTP prober) | Grafana Labs](https://grafana.com/grafana/dashboards/13659-blackbox-exporter-http-prober/)\n- [Grafana Internals | Grafana Labs](https://grafana.com/grafana/dashboards/3590-grafana-internals/)\n- [Alertmanager | Grafana Labs](https://grafana.com/grafana/dashboards/9578-alertmanager/)\n- [Node Exporter Full | Grafana Labs](https://grafana.com/grafana/dashboards/1860-node-exporter-full/)\n\nMore shared dashboards: [Dashboards | Grafana Labs](https://grafana.com/grafana/dashboards/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frea1shane%2Fmonitor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frea1shane%2Fmonitor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frea1shane%2Fmonitor/lists"}