Forge Home

mcelog

Manages the `mcelog` utility for x86-64 CPU Machine Check Exception data

11,406 downloads

8,574 latest version

5.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.2.0 (latest)
  • 1.1.2
  • 1.1.1
  • 1.1.0
  • 1.0.2
  • 1.0.1
  • 0.1.0
released Jun 24th 2015
This version is compatible with:
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'jhoblitt-mcelog', '1.2.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add jhoblitt-mcelog
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install jhoblitt-mcelog --version 1.2.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

jhoblitt/mcelog — version 1.2.0 Jun 24th 2015

Puppet mcelog Module

Build Status

Table of Contents

  1. Overview
  2. Description
  3. Usage
  4. Limitations
  5. Versioning
  6. Support
  7. Contributing
  8. See Also

Overview

Manages the mcelog utility for x86-64 CPU Machine Check Exception data

Description

This is a puppet module for the installation and configuration of the mcelog utility. Which can be used either from the cli or run as a daemon that extracts and decodes Machine Check Exception (MCE) data.

Usage

Simple

include ::mcelog

mcelog

This class is presently the only public API in this module.

# defaults
class { '::mcelog':
  config_file_template => 'mcelog/mcelog.conf.erb',
}
  • package_name

String defaults to: mcelog

The name of the package.

  • config_file_path

String defaults to: /etc/mcelog.conf on EL5 or /etc/mcelog/mcelog.conf on EL6 and EL7

The path of mcelog configuration file.

  • config_file_template

String defaults to: mcelog/mcelog.conf.erb

The name of the [ERB] template to use for the generation of the mcelog.conf file.

  • service_name

String defaults to: mcelogd on EL6 or mcelog on EL7

The name of the service.

  • service_stdout

String defaults to: null

Only for EL7. The value of the StandardOutput parameter in the systemd script.

Limitations

This module is extremely basic. A few obvious improvements would be to:

  • provide more configuration options; specifically enable/disable mce events being sent to syslog
  • logrotated setup of the mcelog log file
  • provide support for running mcelog as a daemon on EL5.x

Please note that MCE is only avaiable on x86_64. It /can not/ work and the package is likely not avaible on i386 hosts.

Tested Platforms

  • EL5.x
  • EL6.x
  • EL7.x
  • Fedora 22

Puppet Version Compatibility

Versions Puppet 2.7 Puppet 3.x Puppet 4.x
0.x yes yes no
1.x no yes yes

Versioning

This module is versioned according to the Semantic Versioning 2.0.0 specification.

Support

Please log tickets and issues at github

Contributing

  1. Fork it on github
  2. Make a local clone of your fork
  3. Create a topic branch. Eg, feature/mousetrap
  4. Make/commit changes
    • Commit messages should be in imperative tense
    • Check that linter warnings or errors are not introduced - bundle exec rake lint
    • Check that Rspec-puppet unit tests are not broken and coverage is added for new features - bundle exec rake spec
    • Documentation of API/features is updated as appropriate in the README
    • If present, beaker acceptance tests should be run and potentially updated - bundle exec rake beaker
  5. When the feature is complete, rebase / squash the branch history as necessary to remove "fix typo", "oops", "whitespace" and other trivial commits
  6. Push the topic branch to github
  7. Open a Pull Request (PR) from the topic branch onto parent repo's master branch

See Also