Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
3982df9e24
|
|||
3bd632a39b
|
|||
b17e0376bc
|
@@ -21,6 +21,8 @@ Quick Examples:
|
||||
- `rsm enable <svc>` - enable a service (autostart at boot)
|
||||
- `rsm disable <svc>` - disable a service (no autostart at boot)
|
||||
- `rsm hup <svc>` - refresh a service (`SIGHUP`)
|
||||
- `rsm logs <svc>` or `rsm alllogs <svc>` - lists all logs for a service (access and error)
|
||||
- `rsm errorlogs <svc>` - lists all error logs for a service
|
||||
|
||||
Status:
|
||||
|
||||
|
100
rsm
100
rsm
@@ -9,7 +9,7 @@
|
||||
# Date: August 29, 2018
|
||||
# License: MIT
|
||||
|
||||
RSM_VERSION='v1.3.9'
|
||||
RSM_VERSION='v1.4.0'
|
||||
|
||||
export SVDIR=${SVDIR:-/run/runit/service/}
|
||||
export FLDIR=${FLDIR:-/etc/runit/sv/}
|
||||
@@ -492,6 +492,94 @@ do_enable_disable() {
|
||||
return "$ret"
|
||||
}
|
||||
|
||||
# show logs
|
||||
do_show_logs() {
|
||||
local LOGDIR="/var/log/"
|
||||
local SVDIR="/run/runit/service/"
|
||||
monitors_array=($(xrandr -q))
|
||||
local cmd=$1
|
||||
local svc
|
||||
local ret=0
|
||||
local file
|
||||
shift
|
||||
|
||||
# Loop all arguments as services
|
||||
msg "Running $progname $cmd $*"
|
||||
|
||||
for svc in "$@"; do
|
||||
# Validate service name
|
||||
if ! [[ $svc =~ $svc_re ]]; then
|
||||
rmsg -1 "unexpected characters in name: '$svc'" >&2
|
||||
continue
|
||||
fi
|
||||
done
|
||||
|
||||
if ! [[ -d ${SVDIR}${cmd} ]]; then
|
||||
printf "\n%20s\n" "${colorgreen}The following log files found:"
|
||||
local logs_files_array=($(ls /var/log/$cmd/*.*))
|
||||
printf "\n$colorblue"
|
||||
printf '%s\n' "${logs_files_array[@]}"
|
||||
|
||||
printf "\n$colormagenta"
|
||||
read -n 1 -s -r -p "Press any key to continue"
|
||||
|
||||
printf "\n"
|
||||
printf "\n${colorcyan}Log files full output:\n"
|
||||
printf "${coloryellow}\n"
|
||||
printf "${coloryellow}${opt}"
|
||||
|
||||
tail -n 10 ${LOGDIR}${cmd}/*.* | more
|
||||
printf "\n"
|
||||
fi
|
||||
|
||||
rmsg "$ret" "[$progname $cmd $*], exit code: $ret"
|
||||
return "$ret"
|
||||
}
|
||||
|
||||
# show error logs
|
||||
do_show_err_logs() {
|
||||
local LOGDIR="/var/log/"
|
||||
local SVDIR="/run/runit/service/"
|
||||
monitors_array=($(xrandr -q))
|
||||
local cmd=$1
|
||||
local svc
|
||||
local ret=0
|
||||
local file
|
||||
shift
|
||||
|
||||
# Loop all arguments as services
|
||||
msg "Running $progname $cmd $*"
|
||||
|
||||
for svc in "$@"; do
|
||||
# Validate service name
|
||||
if ! [[ $svc =~ $svc_re ]]; then
|
||||
rmsg -1 "unexpected characters in name: '$svc'" >&2
|
||||
continue
|
||||
fi
|
||||
done
|
||||
|
||||
if ! [[ -d ${SVDIR}${cmd} ]]; then
|
||||
printf "\n%20s\n" "${colorgreen}The following log files found:"
|
||||
local logs_files_array=($(ls /var/log/$cmd/*.*))
|
||||
printf "\n$colorblue"
|
||||
printf '%s\n' "${logs_files_array[@]}"
|
||||
|
||||
printf "\n$colormagenta"
|
||||
read -n 1 -s -r -p "Press any key to continue"
|
||||
|
||||
printf "\n"
|
||||
printf "\n${colorcyan}Log files full output:\n"
|
||||
printf "${coloryellow}\n"
|
||||
printf "${coloryellow}${opt}"
|
||||
|
||||
tail -n 10 ${LOGDIR}${cmd}/*error*.* | more
|
||||
printf "\n"
|
||||
fi
|
||||
|
||||
rmsg "$ret" "[$progname $cmd $*], exit code: $ret"
|
||||
return "$ret"
|
||||
}
|
||||
|
||||
# handle any other subcommand
|
||||
do_sv_cmd() {
|
||||
if (($# < 2)); then
|
||||
@@ -550,6 +638,16 @@ case "$cmd" in
|
||||
enable|disable)
|
||||
do_enable_disable "$cmd" "$@"
|
||||
;;
|
||||
logs)
|
||||
do_show_logs "$@"
|
||||
;;
|
||||
alllogs)
|
||||
do_show_logs "$@"
|
||||
;;
|
||||
errorlogs)
|
||||
do_show_err_logs "$@"
|
||||
;;
|
||||
|
||||
*)
|
||||
if $tree; then
|
||||
rmsg -1 "-t can only be specified with 'status'"
|
||||
|
Reference in New Issue
Block a user