SERVICELOG(8)

πŸ“¦ version 1.1.16, in opensuse-leap 16.0

πŸ’… SERVICELOG(8) β€” the servicelog page, bestie edition

okay so this is servicelog, and it lives in the PowerLinux Diagnostic Tools family (that's the manual name, consider it folded in πŸŽ€). Buckle up, she's actually not that complicated and I promise you're gonna slay this.


✨ NAME ✨

servicelog β€” query the contents of the servicelog. that's it, that's the whole job, and she does it gorgeously πŸ’–


🌸 SYNOPSIS 🌸

/usr/bin/servicelog [options]

literally just the path and some options, no cap. keep this energy.


πŸ¦‹ DESCRIPTION πŸ¦‹

servicelog queries and displays the contents of the system servicelog. you want to pick and choose which events get reported? use the --query option, bestie, that's what it's for πŸ’…


⭐ OPTIONS ⭐

okay so when you run servicelog with no command-line arguments at all, she'll report statistics on the types of entries that have been logged to the database. like a little vibe check on your own log. so chill.

  • --dump, -d β€” report every event currently logged to the database. all of them. the whole icon behavior. no filtering, no mercy πŸ”₯
  • --query="query-string", -q "query-string" β€” specify the type of events to report. full details live down in the "QUERY STRINGS" section, go look, i'll wait 🫢
  • --help, -h β€” display a help message and exit. classic, iconic, always there for you.
  • --version, -V β€” display the version of the command and exit. she'll tell you who she is πŸ‘‘

πŸ” QUERY STRINGS πŸ”

so here's the tea: servicelog events are stored in a relational database. when you specify --query, query-string is used in an SQL WHERE clause to select the events to report. yep, you're writing SQL, you're that girl now πŸ’œ

here are the column names you can use in query strings:

  • id β€” record ID
  • time_logged, time_event, time_last_update β€” e.g., '2008-02-08 14:30:05'
  • type β€” an integer, or one of the following names: $BASIC (same as 0), $OS (1), $RTAS (2), $ENCLOSURE (3), $BMC (4)
  • severity β€” an integer, or one of the following names: $FATAL (7), $ERROR (6), $ERROR_LOCAL (5), $WARNING (4), $EVENT (3), $INFO (2), $DEBUG (1)
  • platform β€” processor type (text)
  • machine_serial β€” serial number (text)
  • machine_model β€” model number (text)
  • nodename β€” name of system reporting the event (text)
  • refcode β€” reference code (text)
  • description β€” (text)
  • serviceable β€” 0 or 1
  • predictive β€” 0 or 1
  • disposition β€” 0 (Recoverable), 1 (Unrecoverable), or 2 (Unrecoverable, Bypassed)
  • call_home_status β€” 0 (None Needed), 1 (Call Home Candidate), or 2 (Called Home)
  • closed β€” 0 or 1
  • repair β€” numeric ID of repair action that close this event, or 0 if not closed

🌈 the per-type columns 🌈

the following column names can used to select OS-type events: os.version, subsystem, driver, and device (all text).

the following column names can be used to select RTAS-type events: creator_id (text); action_flags, platform_id, subsystem_id, pel_severity, rtas.event_type, event_subtype, kernel_id, and addl_word1 through addl_word8 (all integers). yes, through addl_word8. eight of them. she said what she said πŸ’€

the following column names can be used to select ENCLOSURE-type events: enclosure_serial, enclosure_model (both text).

the following column names can be used to select BMC-type events: sel_id, sel_type, generator, bmc.version, sensor_type, sensor_number, event_class, bmc.event_type, and direction (all integers).


πŸŽ€ EXAMPLES πŸŽ€

these are copied exactly, because duh, run them verbatim:

  • servicelog --query='id=12' prints the event with an ID of 12.
  • servicelog --query='serviceable=1 AND closed=0' prints all open (unfixed) serviceable events.
  • servicelog -q 'severity>=$WARNING AND closed=0' prints all open events with a sev of WARNING or greater.
  • servicelog -q "time_event>'2008-02-08'" prints all events that occurred after Feb 8, 2008.

see? ate. no crumbs.


πŸ’€ OLD SYNTAX πŸ’€

important, listen up: this man page describes the command syntax accepted by v1.0 and later of servicelog. in v1.1, backward compatibility with v0.2.9 was added. and if servicelog recognizes v0.2.9 command-line options, it will exec the v0.2.9 version of the command. so like... it hands you off to your older self. respect the elders, fr fr πŸ™ˆ

heads up bestie β€” if you're passing v0.2.9-style options you are not running the code you think you're running. the old binary takes the wheel. iykyk.

πŸ‘‘ AUTHOR πŸ‘‘

written by Michael Strosaker (strosake@austin.ibm.com), Nathan Fontenot (nfont@austin.ibm.com), Jim Keniston (jkenisto@us.ibm.com), Brad Peters. absolute legends, all of them 🫢


🌟 SEE ALSO 🌟

servicelog_manage(8) servicelog_notify(8) log_repair_action(8)


that's the whole page, you're officially a servicelog girlie now πŸ’…βœ¨ this cutie comes to you from Linux, dated February 2012, wrapping up the PowerLinux Diagnostic Tools SERVICELOG(8) manual β€” mwah, go query something iconic πŸ“πŸ’–

πŸ“¦ where this page comes from