- Fixes a bug where the tarballs files would contain 90 days worth of files instead of 1
- Ensure the system metrics can be tidied up
- Stop pretty-printing the system metrics.
This is a major release as it drops support for Puppet 4.x and versions of PE based upon Puppet 4.x. If you are using those unsupported versions of PE, continue to use version 5.3.0.
Refer to the README for limitations regarding the collection of remote PuppetDB metrics, and a workaround.
If using this module with the Puppet Metrics Dashboard, upgrade to version 2.2.0 or later of that module.
- Switch from the v1 to v2 Metrics API for additional metrics (for PuppetDB)
- Collect ACE and Bolt service metrics
- Reorganize into service and system classes
- Move duplicate code from service classes to defined types
- Move templated per-service tidy scripts to one common 'metrics_tidy' script
- Simplify the 'create-metrics-archive' script, removing the one constant parameter
- Do not symlink the 'create-metrics-archive' script to '/opt/puppetlabs/bin/'
- Store configuration and code in separate 'config' and 'scripts' directories
- Eliminate the '/opt/puppetlabs/puppet_metrics_collector/bin' directory
- Add puppet code to delete the resulting legacy directories and files
- Resolve various puppet-lint and rubocop issues
- Refactor the shell scripts
- Merge json2graphite.rb and json2timeseriesdb scripts
- Update measurement tagging
- Update to PDK 1.16
- Update documentation
- Drop support for Puppet 4.x and versions of PE based upon Puppet 4.x
- Use v2 Metrics API for additional metrics for PuppetDB
- Change tags to system metrics
- Enable FOSS support with Puppetserver collection
- Remove
127.0.0.1
special case naming - Add the ability to generate system metrics
- Make the output files smaller by excluding metrics and not pretty printing
- Add a newline to STDOUT of the processing script
- Add ability to send metrics data directly to influxdb, graphite, or splunk ( in combination with the splunk_hec module )
- Update metadata dependency information to reflect support for puppetlabs/stdlib 6.x
- Update metadata dependency information to reflect support for puppetlabs/stdlib 5.x
- Update Changelog terminology to use semver term "Patch", rather than "Z"
- Ensure nightly compression of metrics works with a large amount of files
- Auto configure puppetserver and puppetdb hosts
- https://github.com/puppetlabs/puppetlabs-puppet\_metrics\_collector/pull/5
- Convert module to standard PDK format
This major release renames the project and obseletes deprecated parameters that had previously been preserved for backwards compatiblity. The new name of the project aligns it with the value it provides, and eliminates long incorrect technology references to its implementation from the name.
Note: If upgrading to puppet_metrics_collector 5.x from a pe_metric_curl_cron_jobs version older than 4.6.0, it is recommended that you deploy pe_metric_curl_cron_jobs 4.6.0 first, let Puppet run, and then upgrade to puppet_metrics_collector 5.x in order to ensure that all cleanup and migration work is performed smoothly.
- Rename the project from "pe_metric_curl_cron_jobs" to "puppet_metrics_collector"
- Remove deprecated parameters
- puppet_metrics_collector::puppet_server_hosts (long deprecated in favor of puppet_metrics_collector::puppetserver_hosts)
- puppet_metrics_collector::puppet_server_port (long deprecated in favor of puppet_metrics_collector::puppetserver_port)
- Add PuppetDB HA Metrics
- Add a script to zip up metrics for sharing
- Tidy script does not work without bzip (not installed on RHEL 7 by default)
- The tidy script now uses gzip which is more regularly available
- PR #45
- Tidy script would not exit on error
- Config file could change every run if you use puppetdb_query to find the hosts
- PuppetDB metrics could not be gathered by default in PE < 2016.4.0
- Allow connecting over http instead of https for PuppetDB
- PR #37
- In order to use pass
--no-ssl
and--metrics_port
to the tk_metrics script
- No longer pass certificates to connect to metrics endpoint
- Tidy cron jobs would only delete metric files exactly retention_days away
- PE versions < 2016.2 now GET each metric individually instead of using a POST
- Allow not saving a metrics file
- Add a
--output-dir
CLI argument to metrics scripts which tells the script where to save metrics output to. - If
--output-dir
is not specified then no file is saved
- Add a
- Metrics scripts print to STDOUT by default
- Use
--no-print
to silence output to STDOUT
- Use
- Retrieve all additional metrics with one POST instead of multiple GETs
- Add a
--print
command line argument to the metrics scripts- This allows for integrations with other tools that can read the output from stdout.
- PR #24
- Move script configuration into a YAML file
- Allow the metrics scripts to be stored as static files instead of templates
- PR #25
This is a major release because some of the PuppetDB metrics are renamed. For most users this update is only additive, however, if you are post processing the output of the module then you may need to update to the new names of the metrics.
- Rename some PuppetDB metrics
- command_processing_time is now global_processing_time
- command_processed is now global_processed
- replace_catalog_time is now storage_replace-catalog-time
- replace_facts_time is now storage_replace-facts-time
- store_report_time is now storage_store-report-time
- *_retry and *_retry-counts metrics are renamed to include mq_ at the front
- We now collect the output of the status endpoint for orchestrator
- We now collect HakariCP connection pooling metrics for PuppetDB
- We now collect the global metrics for PuppetDB
- We now collect the storage metrics for PuppetDB
- Each component now has its own class to allow customizing parameters per component
- Stagger compression of files between midnight and 3AM to prevent a CPU spike
- Every parameter, file name, etc... that contained puppet_server is rewritten
to puppetserver
- The existing parameters remain but are deprecated and should not be used
- Metric storage format is a single JSON blob instead of the exact output from whichever endpoint was queried
- Metrics gathering scripts are rewritten in ruby
- Metrics are now stored in one file per component
- PuppetDB metrics were previously stored with one file per metric
- Metrics are now stored in one directory per server
- PuppetDB metrics now gathers the status endpoint
- This is the preferred way to get the queue_depth metric
- Opt-in collection of ActiveMQ metrics is available
- Metrics are compressed daily for a 90% reduction in disk space
- Metrics are retained for 90 days by default instead of 3 days
- Retained metrics still take less space due to compression savings
- Metrics are retained for 90 days by default instead of 3 days
- The metrics tidy cron job previously ran every minute between 2-3 AM. It now runs just once at 2AM.