| Server IP : 172.67.134.114 / Your IP : 162.159.115.42 Web Server : Apache/2.4.37 System : Linux almalinux.duckdns.org 4.18.0-553.111.1.el8_10.x86_64 #1 SMP Sun Mar 8 20:06:07 EDT 2026 x86_64 User : ricodeal ( 1046) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/systemtap/examples/profiling/ |
Upload File : |
#!/usr/bin/stap
#
# Copyright (C) 2010, 2018 Red Hat, Inc.
# By Dominic Duval, Red Hat Inc.
# [email protected]
#
# Monitors errors returned by system calls.
#
# USAGE: stap errno.stp
#
global execname, errors
probe syscall_any.return {
errno = retval
if ( errno < 0 ) {
p = pid()
execname[p]=execname();
errors[p, errno, name] <<< 1
}
}
probe end {
printf("\n")
printf("%8s %-32s %-16s %-12s %8s\n",
"PID", "Syscall", "Process", "Error", "Count")
foreach ([pid, error, thissyscall] in errors- limit 20) {
printf("%8d %-32s %-16s %-12s %8d\n",
pid,
thissyscall,
execname[pid],
error ? errno_str(error) : "",
@count(errors[pid, error, thissyscall])
)
}
}
global prom_arr
probe prometheus {
foreach ([p, errno, name] in errors- limit 20) {
prom_arr[p, errno, name] = @count(errors[p, errno, name])
}
@prometheus_dump_array3(prom_arr, "syscall_error_count", "pid", "errno", "name")
delete prom_arr
}