{"id":15013971,"url":"https://github.com/voxpupuli/puppet-prometheus_reporter","last_synced_at":"2025-05-16T18:06:11.848Z","repository":{"id":45397958,"uuid":"71391715","full_name":"voxpupuli/puppet-prometheus_reporter","owner":"voxpupuli","description":"A prometheus Puppet reports exporter for Puppet","archived":false,"fork":false,"pushed_at":"2025-05-02T10:56:55.000Z","size":209,"stargazers_count":53,"open_issues_count":3,"forks_count":21,"subscribers_count":45,"default_branch":"master","last_synced_at":"2025-05-07T11:28:04.958Z","etag":null,"topics":["centos-puppet-module","debian-puppet-module","hacktoberfest","linux-puppet-module","puppet","redhat-puppet-module","ubuntu-puppet-module"],"latest_commit_sha":null,"homepage":"https://forge.puppet.com/modules/puppet/prometheus_reporter","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/voxpupuli.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","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,"zenodo":null},"funding":{"open_collective":"vox-pupuli","github":"voxpupuli"}},"created_at":"2016-10-19T19:23:29.000Z","updated_at":"2025-05-02T10:57:00.000Z","dependencies_parsed_at":"2023-01-30T01:15:38.071Z","dependency_job_id":"74ec5c4a-aff8-47b5-a71a-6702d90eddd3","html_url":"https://github.com/voxpupuli/puppet-prometheus_reporter","commit_stats":{"total_commits":99,"total_committers":18,"mean_commits":5.5,"dds":0.3232323232323232,"last_synced_commit":"a0edbbb28840fe403666d1b508e3d43a0c9ec00f"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-prometheus_reporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-prometheus_reporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-prometheus_reporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voxpupuli%2Fpuppet-prometheus_reporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/voxpupuli","download_url":"https://codeload.github.com/voxpupuli/puppet-prometheus_reporter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253634697,"owners_count":21939696,"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":["centos-puppet-module","debian-puppet-module","hacktoberfest","linux-puppet-module","puppet","redhat-puppet-module","ubuntu-puppet-module"],"created_at":"2024-09-24T19:45:00.865Z","updated_at":"2025-05-16T18:06:11.841Z","avatar_url":"https://github.com/voxpupuli.png","language":"Ruby","funding_links":["https://opencollective.com/vox-pupuli","https://github.com/sponsors/voxpupuli"],"categories":[],"sub_categories":[],"readme":"# Puppet Prometheus Reports Processor\n\nThis module contains a Puppet [reports processor][rpc] that writes report\nmetrics in a format that is accepted by [Prometheus node_exporter Textfile\nCollector][pnetc].\n\n[rpc]:https://puppet.com/docs/puppet/latest/reporting_about.html\n[pnetc]:https://github.com/prometheus/node_exporter#textfile-collector\n\n\n## How to\n\n### Puppet setup\n\nInclude this module in your path, and create a file named `prometheus.yaml` in\nyour Puppet configuration directory. Example:\n\n```yaml\n---\ntextfile_directory: /var/lib/prometheus-dropzone\n```\n\nConfiguration options include:\n- `textfile_directory` - [String] Location of the node_exporter `collector.textfile.directory` (Required)\n- `report_file_prefix` - [String] Prefix for metrics files. Default: `puppet_report_`\n- `report_file_mode` - File mode to set on report files. Default: 0644\n- `environments` - [Array] If specified, only creates metrics on reports from these environments\n- `reports` - [Array] If specified, only creates metrics from reports of this type (changes, events, resources, time)\n- `stale_time` - [Integer] If specified, delete metric files for nodes that haven't sent reports in X days\n\nInclude `prometheus` in your Puppet reports configuration:\n\n```ini\n[agent]\nreport = true\n\n[master]\nreport = true\nreports = prometheus\n```\n\nNote: you can use a comma separated list of reports processors:\n\n```ini\nreports = puppetdb,prometheus\n```\n\n### Prometheus\n\nCall the Prometheus node_exporter with the `--collector.textfile.directory`\nflag.\n\n```\nnode_exporter --collector.textfile.directory=/var/lib/prometheus-dropzone\n```\n\nNote: The directory can be anywhere, but must be matched to the one set in `prometheus.yaml` above.\n\n### Sample\n\n```\npuppet_report_resources{name=\"Changed\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Failed\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Failed to restart\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Out of sync\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Restarted\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Scheduled\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Skipped\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_resources{name=\"Total\",environment=\"production\",host=\"node.example.com\"} 519\npuppet_report_time{name=\"Acl\",environment=\"production\",host=\"node.example.com\"} 3.8629975709999984\npuppet_report_time{name=\"Anchor\",environment=\"production\",host=\"node.example.com\"} 0.002442332\npuppet_report_time{name=\"Augeas\",environment=\"production\",host=\"node.example.com\"} 10.629003954\npuppet_report_time{name=\"Concat file\",environment=\"production\",host=\"node.example.com\"} 0.0026740609999999997\npuppet_report_time{name=\"Concat fragment\",environment=\"production\",host=\"node.example.com\"} 0.012010700000000003\npuppet_report_time{name=\"Config retrieval\",environment=\"production\",host=\"node.example.com\"} 20.471957786\npuppet_report_time{name=\"Cron\",environment=\"production\",host=\"node.example.com\"} 0.000874118\npuppet_report_time{name=\"Exec\",environment=\"production\",host=\"node.example.com\"} 0.4114313850000001\npuppet_report_time{name=\"File\",environment=\"production\",host=\"node.example.com\"} 0.32955574000000015\npuppet_report_time{name=\"File line\",environment=\"production\",host=\"node.example.com\"} 0.002702939\npuppet_report_time{name=\"Filebucket\",environment=\"production\",host=\"node.example.com\"} 0.0003994\npuppet_report_time{name=\"Grafana datasource\",environment=\"production\",host=\"node.example.com\"} 0.187452552\npuppet_report_time{name=\"Group\",environment=\"production\",host=\"node.example.com\"} 0.0031514940000000003\npuppet_report_time{name=\"Mysql datadir\",environment=\"production\",host=\"node.example.com\"} 0.000422795\npuppet_report_time{name=\"Package\",environment=\"production\",host=\"node.example.com\"} 1.670733222\npuppet_report_time{name=\"Service\",environment=\"production\",host=\"node.example.com\"} 0.8740041969999999\npuppet_report_time{name=\"Total\",environment=\"production\",host=\"node.example.com\"} 38.468031933999995\npuppet_report_time{name=\"User\",environment=\"production\",host=\"node.example.com\"} 0.005163427\npuppet_report_time{name=\"Yumrepo\",environment=\"production\",host=\"node.example.com\"} 0.0010542610000000001\npuppet_report_changes{name=\"Total\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_events{name=\"Failure\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_events{name=\"Success\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report_events{name=\"Total\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_report{environment=\"production\",host=\"node.example.com\"} 1477054915347\npuppet_transaction_completed{environment=\"production\",host=\"node.example.com\"} 1\npuppet_cache_catalog_status{state=\"not_used\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_cache_catalog_status{state=\"explicitly_requested\",environment=\"production\",host=\"node.example.com\"} 1\npuppet_cache_catalog_status{state=\"on_failure\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_status{state=\"failed\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_status{state=\"changed\",environment=\"production\",host=\"node.example.com\"} 0\npuppet_status{state=\"unchanged\",environment=\"production\",host=\"node.example.com\"} 1\n```\n\n## Contributors\n\n[See Github](https://github.com/voxpupuli/puppet-prometheus_reporter/graphs/contributors).\n\nSpecial thanks to [Puppet, Inc](http://puppet.com) for Puppet, and its store\nreports processor, to [EvenUp](https://letsevenup.com/) for their\n[graphite](https://github.com/evenup/evenup-graphite_reporter) reports\nprocessor, and to [Vox Pupuli](https://voxpupuli.org) to provide a platform\nthat allows us to develop of this module.\n\n## Copyright and License\n\nCopyright © 2016 [Puppet Inc](https://www.puppet.com/)\n\nCopyright © 2016 [EvenUp](https://letsevenup.com/)\n\nCopyright © 2016 [Multiple contributors][mc]\n\n[mc]:https://github.com/voxpupuli/puppet-prometheus_reporter/graphs/contributors\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n  http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoxpupuli%2Fpuppet-prometheus_reporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvoxpupuli%2Fpuppet-prometheus_reporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoxpupuli%2Fpuppet-prometheus_reporter/lists"}