{"id":15780434,"url":"https://github.com/ulisesgascon/poc-nodejs-machines-ping-dashboard","last_synced_at":"2026-04-27T22:32:58.229Z","repository":{"id":72138397,"uuid":"568821538","full_name":"UlisesGascon/poc-nodejs-machines-ping-dashboard","owner":"UlisesGascon","description":"A simple way to visualize the Node.js Machines inventory and perform a cyclical ping to collect network metrics with a full dockerize environment and a fancy dashboard.","archived":false,"fork":false,"pushed_at":"2022-11-21T13:53:39.000Z","size":1508,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-13T07:46:26.096Z","etag":null,"topics":["grafana","telegraf"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/UlisesGascon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2022-11-21T13:35:22.000Z","updated_at":"2022-11-21T14:01:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"e6907421-3095-4f66-8e70-812dfa8b08e5","html_url":"https://github.com/UlisesGascon/poc-nodejs-machines-ping-dashboard","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/UlisesGascon/poc-nodejs-machines-ping-dashboard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UlisesGascon%2Fpoc-nodejs-machines-ping-dashboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UlisesGascon%2Fpoc-nodejs-machines-ping-dashboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UlisesGascon%2Fpoc-nodejs-machines-ping-dashboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UlisesGascon%2Fpoc-nodejs-machines-ping-dashboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UlisesGascon","download_url":"https://codeload.github.com/UlisesGascon/poc-nodejs-machines-ping-dashboard/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UlisesGascon%2Fpoc-nodejs-machines-ping-dashboard/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32358509,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-27T20:07:02.737Z","status":"ssl_error","status_checked_at":"2026-04-27T20:07:00.910Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["grafana","telegraf"],"created_at":"2024-10-04T18:41:33.437Z","updated_at":"2026-04-27T22:32:58.208Z","avatar_url":"https://github.com/UlisesGascon.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# POC Node.js Machines Ping Dashboard\n\nA simple way to visualize the [Node.js Machines inventory](https://github.com/nodejs/build/blob/main/ansible/inventory.yml) and perform a cyclical ping to collect network metrics with a full dockerize environment and a fancy dashboard. \n\n## Requirements\n- Docker and Docker-compose\n- Node.js\n\n## Features\n- Download and digest the last inventory available in nodejs/build repository\n- Simple NPM commands to manage the docker-compose infra\n- Fancy dashboard\n- Metrics are generated with Telegraf\n- Metrics are stored in Influxdb\n- Filter out non public Ips from the Node.js inventory\n\n## Preview\n\n![Dashboard preview with all the hosts](__other__/screenshot.png)\n\n## Setup\n\n1. Get the last inventory version by running `npm run start`. This will generate the file `./telegraf.conf` with all the IPs and domains.\n2. Start the Docker infra by running `npm run infra:start`. This can take some minutes depending on your network\n3. Go to http://localhost:3000/login\n    - Login it with user `admin` and pass `admin`\n4. Add new data source in http://localhost:3000/datasources/new as follows:\n    - Select `InfluxDb`\n    - HTTP url: `http://influxdb:8086`\n    - InfluxDB Details Database: `telegraf`\n    - InfluxDB Details User: `root`\n    - Click in `Save \u0026 Test`\n5. Import a fancy dashboard in http://localhost:3000/dashboard/import\n    - Add id `2690` and press `Load`\n    - (In the next page) Select `InfluxDB` and press `Import`\n\n### Stop\n\nJust run `npm run infra:stop`\n\n### Refresh the hosts list\n\n1. Stop the infra `npm run infra:stop`\n2. Update the hosts lists `npm run start`\n3. Start the infra `npm run infra:start`\n\n### Change Telegraf settings\n\nMake any change in `src/telegraf.conf` and this file is extended with the hosts ips\n\n## Acknowledgment\n\n- [Monitorizar con Grafana + InfluxDB + Telegraf, usando docker compose | José Maria Labarta](https://www.youtube.com/watch?v=ykyb8K1dYuY)\n- [Internet Uptime Monitor | Grafana Dashboard](https://grafana.com/grafana/dashboards/2690-internet-uptime-monitor/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fulisesgascon%2Fpoc-nodejs-machines-ping-dashboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fulisesgascon%2Fpoc-nodejs-machines-ping-dashboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fulisesgascon%2Fpoc-nodejs-machines-ping-dashboard/lists"}