1---
2# This yaml formatted file contains defaults items to collect FFDC for the targeted system
3# COMMANDS - List of commands to be run on the corresponding targeted system (inband)
4#            to generate and/or collect data
5# FILES    - List of files; with complete path; on the corresponding targeted system
6#            to be copied to external destination
7# PROTOCOL - Protocol used to communicate with targeted system; ssh, Rest, redfish, etc
8#
9# Note: Items in COMMANDS and FILES are not necessarily one-to-one correspondence.
10#       For example, a file could have been created by an internal process,
11#       and is listed in FILES to be collected.
12#
13
14# Commands and Files to collect for a given OpenBMC system.
15OPENBMC:
16    # Commands and File to take snapshot of linux based system.
17    # Filename is <OS>_general.txt, where <OS> is in [OPENBMC, RHEL, UBUNTU]
18    GENERAL:
19        COMMANDS:
20            - 'rm -rf /tmp/OPENBMC_general.txt'
21            - 'echo "++++++++++ cat /etc/os-release ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
22            - 'cat /etc/os-release >> /tmp/OPENBMC_general.txt 2>&1'
23            - 'echo -e "\n++++++++++ cat /etc/timestamp ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
24            - 'cat /etc/timestamp >> /tmp/OPENBMC_general.txt 2>&1'
25            - 'echo -e "\n++++++++++ uname -a ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
26            - 'uname -a >> /tmp/OPENBMC_general.txt'
27            - 'echo -e "\n++++++++++ cat /etc/timestamp ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
28            - 'cat /etc/timestamp >> /tmp/OPENBMC_general.txt 2>&1'
29            - 'echo -e "\n++++++++++ uptime;cat /proc/uptime ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
30            - 'uptime >> /tmp/OPENBMC_general.txt 2>&1'
31            - 'cat /proc/uptime >> /tmp/OPENBMC_general.txt 2>&1'
32            - 'echo -e "\n++++++++++ df -hT ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
33            - 'df -hT >> /tmp/OPENBMC_general.txt 2>&1'
34            - 'echo -e "\n++++++++++ date;/sbin/hwclock --show ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
35            - 'date >> /tmp/OPENBMC_general.txt 2>&1'
36            - '/sbin/hwclock --show >> /tmp/OPENBMC_general.txt 2>&1'
37            - '/usr/bin/timedatectl >> /tmp/OPENBMC_general.txt 2>&1'
38            - 'echo -e "\n++++++++++ /usr/bin/obmcutil state ++++++++++" >> /tmp/OPENBMC_general.txt 2>&1'
39            - '/usr/bin/obmcutil state >> /tmp/OPENBMC_general.txt 2>&1'
40        FILES:
41            - '/tmp/OPENBMC_general.txt'
42        PROTOCOL:
43            - 'SSH'
44
45    OPENBMC_LOGS:
46        COMMANDS:
47            - 'cat /sys/class/watchdog/watchdog1/bootstatus >/tmp/BMC_flash_side.txt 2>&1'
48            - 'grep -r . /sys/class/hwmon/* >/tmp/BMC_hwmon.txt 2>&1'
49            - 'top -n 1 -b >/tmp/BMC_proc_list.txt 2>&1'
50            - 'ls -Al /proc/*/fd/ >/tmp/BMC_proc_fd_active_list.txt 2>&1'
51            - 'journalctl --no-pager >/tmp/BMC_journalctl_nopager.txt 2>&1'
52            - 'journalctl -o json-pretty >/tmp/BMC_journalctl_pretty.json 2>&1'
53            - 'dmesg >/tmp/BMC_dmesg.txt 2>&1'
54            - 'cat /proc/cpuinfo >/tmp/BMC_procinfo.txt 2>&1'
55            - 'cat /proc/meminfo >/tmp/BMC_meminfo.txt 2>&1'
56            - 'systemctl status --all >/tmp/BMC_systemd.txt 2>&1'
57            - 'systemctl list-units --failed >/tmp/BMC_failed_service.txt 2>&1'
58            - 'systemctl list-jobs >/tmp/BMC_list_service.txt 2>&1'
59            - 'cat /var/log/obmc-console.log >/tmp/BMC_obmc_console.txt 2>&1'
60            - 'cat /var/log/obmc-console1.log >/tmp/BMC_obmc_console1.txt 2>&1'
61            - 'peltool -l >/tmp/PEL_logs_list.json 2>&1'
62            - 'peltool -a >/tmp/PEL_logs_display.json 2>&1'
63        FILES:
64            - '/tmp/BMC_flash_side.txt'
65            - '/tmp/BMC_hwmon.txt'
66            - '/tmp/BMC_proc_list.txt'
67            - '/tmp/BMC_proc_fd_active_list.txt'
68            - '/tmp/BMC_journalctl_nopager.txt'
69            - '/tmp/BMC_journalctl_pretty.json'
70            - '/tmp/BMC_dmesg.txt'
71            - '/tmp/BMC_procinfo.txt'
72            - '/tmp/BMC_meminfo.txt'
73            - '/tmp/BMC_systemd.txt'
74            - '/tmp/BMC_failed_service.txt'
75            - '/tmp/BMC_list_service.txt'
76            - '/tmp/BMC_obmc_console.txt'
77            - '/tmp/BMC_obmc_console1.txt'
78            - '/tmp/PEL_logs_list.json'
79            - '/tmp/PEL_logs_display.json'
80        PROTOCOL:
81            - 'SSH'
82
83    # DUMP_LOGS: This section provides option to 'SCP if file exist'.
84    #     COMMANDS: filename is preceeded by ls -AX '.
85    #     FILES: is not needed and is ignored if exists.
86    DUMP_LOGS:
87        COMMANDS:
88            - 'ls -AX /var/lib/systemd/coredump/core.*'
89            - 'ls -AX /var/lib/phosphor-debug-collector/dumps/*/*.tar.xz'
90            - 'ls -AX /var/lib/phosphor-debug-collector/hostbootdump/*/*.tar.gz'
91        FILES:
92            - '/var/lib/systemd/coredump/core.*'
93            - '/var/lib/phosphor-debug-collector/dumps/*/*.tar.xz'
94            - '/var/lib/phosphor-debug-collector/hostbootdump/*/*.tar.gz'
95        PROTOCOL:
96            - 'SCP'
97
98    # URLs and Files for OPENBMC redfish
99    # URLs and Files are one-to-one corresponding.
100    # File contains the data returned from 'redfishtool GET URL'
101    REDFISH_LOGS:
102        URL:
103            - '/xyz/openbmc_project/software/enumerate'
104            - '/xyz/openbmc_project/state/enumerate'
105            - '/org/open_power/enumerate'
106            - '/redfish/v1/AccountService/Accounts'
107            - '/redfish/v1/Managers/bmc/LogServices/Dump/Entries'
108            - '/redfish/v1/Systems/system/LogServices/Dump/Entries'
109            - '/redfish/v1/Systems/system/LogServices/EventLog/Entries'
110        FILES:
111            - 'REDFISH_software.json'
112            - 'REDFISH_bmc_state.json'
113            - 'REDFISH_openpower_control_occ_state.json'
114            - 'REDFISH_bmc_user_accounts.json'
115            - 'REDFISH_bmc_dump_entries.json'
116            - 'REDFISH_system_dumps_entries.json'
117            - 'REDFISH_event_log_entries.json'
118        PROTOCOL:
119            - 'REDFISH'
120
121    # Commands and Files to collect for via out of band IPMI.
122    IPMI_LOGS:
123        COMMANDS:
124            - 'lan print'
125            - 'fru list'
126            - 'user list'
127        FILES:
128            - 'IPMI_LAN_print.txt'
129            - 'IPMI_FRU_list.txt'
130            - 'IPMI_USER_list.txt'
131        PROTOCOL:
132            - 'IPMI'
133
134# Commands and Files to collect for all Linux distributions
135LINUX:
136    LINUX_LOGS:
137        COMMANDS:
138            - 'cat /sys/firmware/opal/msglog >/tmp/OS_msglog.txt 2>&1'
139            - 'ppc64_cpu --frequency >/tmp/OS_cpufrequency.txt 2>&1'
140            - 'dmesg >/tmp/OS_dmesg.txt 2>&1'
141            - 'cat /var/log/opal-prd* >/tmp/OS_opal_prd.txt 2>&1'
142            - 'cat /var/log/boot.log >/tmp/OS_boot.txt 2>&1'
143            - 'cat /proc/cpuinfo >/tmp/OS_procinfo.txt 2>&1'
144            - 'cat /proc/meminfo >/tmp/OS_meminfo.txt 2>&1'
145            - 'netstat -a >/tmp/OS_netstat.txt 2>&1'
146            - 'lspci >/tmp/OS_lspci.txt 2>&1'
147            - 'lscpu >/tmp/OS_lscpu.txt 2>&1'
148            - 'lscfg >/tmp/OS_lscfg.txt 2>&1'
149            - 'journalctl --no-pager -b > /tmp/OS_journalctl_nopager.txt  2>&1'
150        FILES:
151            - '/tmp/OS_msglog.txt'
152            - '/tmp/OS_cpufrequency.txt'
153            - '/tmp/OS_dmesg.txt'
154            - '/tmp/OS_opal_prd.txt'
155            - '/tmp/OS_boot.txt'
156            - '/tmp/OS_procinfo.txt'
157            - '/tmp/OS_meminfo.txt'
158            - '/tmp/OS_netstat.txt'
159            - '/tmp/OS_lspci.txt'
160            - '/tmp/OS_lscpu.txt'
161            - '/tmp/OS_lscfg.txt'
162            - '/tmp/OS_journalctl_nopager.txt'
163        PROTOCOL:
164            - 'SSH'
165
166# Commands and Files to collect for Ubuntu Linux only
167UBUNTU:
168    UBUNTU_LOGS:
169        COMMANDS:
170            - '{ lsusb -t ; lsusb -v ; } >/tmp/OS_isub.txt 2>&1'
171            - 'tail -n 50000 /var/log/kern.log >/tmp/OS_kern.txt 2>&1'
172            - '{ cat /var/log/auth.log; cat /var/log/auth.log.1 ; } >/tmp/OS_authlog.txt 2>&1'
173            - 'tail -n 200000 /var/log/syslog >/tmp/OS_syslog.txt 2>&1'
174            - '{ uname -a; dpkg -s opal-prd; dpkg -s ipmitool ; } >/tmp/OS_info.txt 2>&1'
175            - 'rm -rf /tmp/sosreport*FFDC*'
176            - {'sosreport --batch --tmp-dir /tmp --ticket-number FFDC >/tmp/OS_sosreport.txt 2>&1': 1200}
177        FILES:
178            - '/tmp/OS_isub.txt'
179            - '/tmp/OS_kern.txt'
180            - '/tmp/OS_authlog.txt'
181            - '/tmp/OS_syslog.txt'
182            - '/tmp/OS_info.txt'
183            - '/tmp/OS_sosreport.txt'
184            - '/tmp/sosreport*.tar.xz'
185        PROTOCOL:
186            - 'SSH'
187
188# Commands and Files to collect for RHE Linux only
189RHEL:
190    RHEL_LOGS:
191        COMMANDS:
192            - '{ cat /etc/os-release; uname -a; rpm -qa ; } >/tmp/OS_info.txt 2>&1'
193            - 'tail -n 200000 /var/log/messages >/tmp/OS_syslog.txt 2>&1'
194            - 'rm -rf /tmp/sosreport*FFDC*'
195            - {'sosreport --batch --tmp-dir /tmp --label FFDC >/tmp/OS_sosreport.txt 2>&1': 1200}
196        FILES:
197            - '/tmp/OS_info.txt'
198            - '/tmp/OS_syslog.txt'
199            - '/tmp/OS_sosreport.txt'
200            - '/tmp/sosreport*.tar.xz'
201        PROTOCOL:
202            - 'SSH'
203
204# Commands and Files to collect for SLES Linux only
205SLES:
206    SLES_LOGS:
207        COMMANDS:
208            - '{ cat /etc/os-release; uname -a; rpm -qa ; } >/tmp/OS_info.txt 2>&1'
209            - 'tail -n 200000 /var/log/messages >/tmp/OS_syslog.txt 2>&1'
210            - 'rm -rf /tmp/scc*.txz.md5'
211            - {'supportconfig >/tmp/OS_supportconfig.txt 2>&1': 1200}
212            - 'cp /var/log/scc*.txz.md5 /tmp/'
213        FILES:
214            - '/tmp/OS_info.txt'
215            - '/tmp/OS_syslog.txt'
216            - '/tmp/OS_supportconfig.txt'
217            - '/tmp/scc*.txz.md5'
218        PROTOCOL:
219            - 'SSH'
220
221# Commands and Files to collect for AIX only
222AIX:
223    AIX_LOGS:
224        COMMANDS:
225            - 'errpt >/tmp/OS_errpt.txt 2>&1 ; errclear 0;'
226            - 'bindprocessor -q >/tmp/OS_processors.txt 2>&1'
227        FILES:
228            - '/tmp/OS_errpt.txt'
229            - '/tmp/OS_processors.txt'
230        PROTOCOL:
231            - 'SSH'
232