{"id":15286484,"url":"https://github.com/yourtion/pm2-guarded","last_synced_at":"2026-05-11T05:55:41.578Z","repository":{"id":57326307,"uuid":"168799269","full_name":"yourtion/pm2-guarded","owner":"yourtion","description":"通过 pmx 获取运行应用的 metrics 并上报到 Influxdb，通过 Grafana 进行展示","archived":false,"fork":false,"pushed_at":"2021-02-25T08:09:59.000Z","size":1049,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-11T05:42:14.219Z","etag":null,"topics":["apm-agent","grafana","grafana-dashboard","grafana-influxdb","influxdb","nodejs","pm2","pm2-module"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/yourtion.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}},"created_at":"2019-02-02T05:47:19.000Z","updated_at":"2021-02-25T08:10:01.000Z","dependencies_parsed_at":"2022-09-21T02:01:13.809Z","dependency_job_id":null,"html_url":"https://github.com/yourtion/pm2-guarded","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yourtion%2Fpm2-guarded","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yourtion%2Fpm2-guarded/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yourtion%2Fpm2-guarded/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yourtion%2Fpm2-guarded/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yourtion","download_url":"https://codeload.github.com/yourtion/pm2-guarded/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244217932,"owners_count":20417677,"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":["apm-agent","grafana","grafana-dashboard","grafana-influxdb","influxdb","nodejs","pm2","pm2-module"],"created_at":"2024-09-30T15:15:10.073Z","updated_at":"2026-05-11T05:55:41.512Z","avatar_url":"https://github.com/yourtion.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pm2-guarded\n\npm2-guarded 是一个 pm2 插件，通过将 pmx 获取运行应用的 metrics value 并整合上报到 Influxdb，同时通过 Grafana 可以进行展示。\n\n## 采集内容\n\n- pm2 应用的 metrics 信息\n- pm2 所在机器的运行状态\n- Nginx 的 nginx_status 信息\n- 通过 socket 上报的信息\n## How to use 安装\n\n```bash\n$ pm2 install pm2-guarded\n```\n### Upgrade 升级\n\n```bash\n$ pm2 module:update pm2-guarded\n```\n\n### Send to influxdb\n\n配置 influxdb 地址\n\n```bash\n$ pm2 set pm2-guarded:influxdb http://user:pass@host:port/db\n```\n### Add Nginx status\n\n采集本机的 Nginx 信息\n\n```bash\n$ pm2 set pm2-guarded:nginx http://127.0.0.1/nginx_status\n```\n\n### Add Proxy to influxdb\n\n一个本地代理接口，可以通过该 socket 向 InfluxDB 上报本地其他数据，主动上报数据，而不是等待 pm2-guarded 定时采集\n\n上报方法参考：[example/socket.ts](example/socket.ts)\n\n```bash\n$ pm2 set pm2-guarded:socketPath /tmp/pm2-guarded.sock\n```\n\n### Config\n\n- set info fetch interval（应用数据采集时间间隔） `pm2 set pm2-guarded:fetchInterval 1000`\n- set data send interval（向 InfluxDB 上报数据时间间隔） `pm2 set pm2-guarded:sendInterval 5000`\n\n## ScreenShot\n\n除了下面的 Grafana 看板，可以根据自己的需求自行定制看板\n\n### APP Info\n\nApp Info Grafana Dashboard: [AppInfo.json](grafana-dashboards/AppInfo.json)\n\n![](screenshots/app1.png)\n![](screenshots/app2.png)\n\n### Nginx info\n\nNginx Info Grafana Dashboard: [Nginx.json](grafana-dashboards/Nginx.json)\n\n![](screenshots/nginx1.png)\n\n### Host Info\n\nHost Info Grafana Dashboard: [HostInfo](grafana-dashboards/HostInfo.json)\n\n![](screenshots/host1.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyourtion%2Fpm2-guarded","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyourtion%2Fpm2-guarded","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyourtion%2Fpm2-guarded/lists"}