ras

package
v1.24.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2022 License: MIT Imports: 10 Imported by: 0

README

RAS Daemon Input Plugin

This plugin is only available on Linux (only for 386, amd64, arm and arm64 architectures).

The RAS plugin gathers and counts errors provided by RASDaemon.

Global configuration options

In addition to the plugin-specific configuration settings, plugins support additional global and plugin configuration settings. These settings are used to modify metrics, tags, and field or create aliases and configure ordering, etc. See the CONFIGURATION.md for more details.

Configuration

# RAS plugin exposes counter metrics for Machine Check Errors provided by RASDaemon (sqlite3 output is required).
[[inputs.ras]]
  ## Optional path to RASDaemon sqlite3 database.
  ## Default: /var/lib/rasdaemon/ras-mc_event.db
  # db_path = ""

In addition RASDaemon runs, by default, with --enable-sqlite3 flag. In case of problems with SQLite3 database please verify this is still a default option.

Metrics

  • ras
    • tags:
      • socket_id
    • fields:
      • memory_read_corrected_errors
      • memory_read_uncorrectable_errors
      • memory_write_corrected_errors
      • memory_write_uncorrectable_errors
      • cache_l0_l1_errors
      • tlb_instruction_errors
      • cache_l2_errors
      • upi_errors
      • processor_base_errors
      • processor_bus_errors
      • internal_timer_errors
      • smm_handler_code_access_violation_errors
      • internal_parity_errors
      • frc_errors
      • external_mce_errors
      • microcode_rom_parity_errors
      • unclassified_mce_errors

Please note that processor_base_errors is aggregate counter measuring the following MCE events:

  • internal_timer_errors
  • smm_handler_code_access_violation_errors
  • internal_parity_errors
  • frc_errors
  • external_mce_errors
  • microcode_rom_parity_errors
  • unclassified_mce_errors

Permissions

This plugin requires access to SQLite3 database from RASDaemon. Please make sure that user has required permissions to this database.

Example Output

ras,host=ubuntu,socket_id=0 external_mce_base_errors=1i,frc_errors=1i,instruction_tlb_errors=5i,internal_parity_errors=1i,internal_timer_errors=1i,l0_and_l1_cache_errors=7i,memory_read_corrected_errors=25i,memory_read_uncorrectable_errors=0i,memory_write_corrected_errors=5i,memory_write_uncorrectable_errors=0i,microcode_rom_parity_errors=1i,processor_base_errors=7i,processor_bus_errors=1i,smm_handler_code_access_violation_errors=1i,unclassified_mce_base_errors=1i 1598867393000000000
ras,host=ubuntu level_2_cache_errors=0i,upi_errors=0i 1598867393000000000

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Ras

type Ras struct {
	DBPath string `toml:"db_path"`

	Log telegraf.Logger `toml:"-"`
	// contains filtered or unexported fields
}

Ras plugin gathers and counts errors provided by RASDaemon

func (*Ras) Gather

func (r *Ras) Gather(acc telegraf.Accumulator) error

Gather reads the stats provided by RASDaemon and writes it to the Accumulator.

func (*Ras) SampleConfig

func (*Ras) SampleConfig() string

func (*Ras) Start added in v1.16.1

func (r *Ras) Start(telegraf.Accumulator) error

Start initializes connection to DB, metrics are gathered in Gather

func (*Ras) Stop added in v1.16.1

func (r *Ras) Stop()

Stop closes any existing DB connection

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL