Rewritten Log Handling
* Now you can set log_level to your needs. See README.md for Details. * Added Option to delete log file on restarts * develop_log: true * * Updated README.md accordingly Signed-off-by: Stephan Wendel <me@stephanwe.de>
This commit is contained in:
parent
7e278cde4b
commit
6891584990
56
README.md
56
README.md
@ -121,11 +121,43 @@ This last 2 should be pretty obvious :)
|
||||
|
||||
There are two more existing parameters,
|
||||
|
||||
log_method: debug
|
||||
log_level:
|
||||
|
||||
**This parameter _has_ to reside under [webcamd] section!**
|
||||
|
||||
This forces webcamd to spit out more camera informations.\
|
||||
You can choose:
|
||||
|
||||
log_level: quiet
|
||||
|
||||
This Option shows a bare minimum Logfile.\
|
||||
For example:
|
||||
|
||||
[11/02/21 20:47:52] webcamd: webcamd - A webcam Service for multiple Cams and Stream Services.
|
||||
[11/02/21 20:47:53] webcamd: Version: v0.1.3-9-g7e278cd
|
||||
[11/02/21 20:47:53] webcamd: Prepare Startup ...
|
||||
[11/02/21 20:47:53] webcamd: INFO: Checking Dependencys
|
||||
[11/02/21 20:47:53] webcamd: Dependency: 'crudini' found in /usr/bin/crudini.
|
||||
[11/02/21 20:47:53] webcamd: Dependency: 'mjpg_streamer' found in /usr/local/bin/mjpg_streamer.
|
||||
[11/02/21 20:47:53] webcamd: Dependency: 'ustreamer' found in /usr/local/bin/ustreamer.
|
||||
[11/02/21 20:47:53] webcamd: Dependency: 'v4l2rtspserver' found in /usr/local/bin/v4l2rtspserver.
|
||||
[11/02/21 20:47:54] webcamd: INFO: Detect available Cameras
|
||||
[11/02/21 20:47:54] webcamd: INFO: Found 2 available Camera(s)
|
||||
[11/02/21 20:47:54] webcamd: /dev/v4l/by-id/usb-USB_Camera_USB_Camera_SN0001-video-index0 -> /dev/video1
|
||||
[11/02/21 20:47:54] webcamd: Detected 'Raspicam' Device -> /dev/video0
|
||||
[11/02/21 20:47:54] webcamd: Try to start configured Cams / Services...
|
||||
[11/02/21 20:47:55] webcamd: INFO: Configuration of Section [cam 1] looks good. Continue...
|
||||
[11/02/21 20:47:55] webcamd: Starting mjpeg-streamer with Device /dev/video0 ...
|
||||
[11/02/21 20:48:03] webcamd: INFO: Configuration of Section [cam usb_black] looks good. Continue...
|
||||
[11/02/21 20:48:04] webcamd: Starting ustreamer with Device /dev/v4l/by-id/usb-USB_Camera_USB_Camera_SN0001-video-index0 ...
|
||||
[11/02/21 20:48:11] webcamd: ... Done!
|
||||
|
||||
The next option is
|
||||
|
||||
log_level: verbose
|
||||
|
||||
This gives you a little more Informations.
|
||||
It prints out you existing webcam.conf and shows
|
||||
a detailed info about your configured ( and connected ) cams.\
|
||||
Like that:
|
||||
|
||||
[10/24/21 02:46:00] webcamd: INFO: Detect available Cameras
|
||||
@ -163,8 +195,24 @@ Like that:
|
||||
|
||||
This is useful to determine what the Hardware Encoder of your Camera is capable of.\
|
||||
In this case a "cheap" raspicam for about 7€ was used.\
|
||||
But it has a downside, everytime you restart webcamd, it will delete the Logfile!
|
||||
So, truly made for Debugging purposes.
|
||||
So, truly made for 'Helper for Setup' purposes.
|
||||
|
||||
If you want to get the full Details, please use
|
||||
|
||||
log_level: debug
|
||||
|
||||
This will show you barely the same as 'verbose' but it prints also your\
|
||||
configured Start Parameters ( and the defaults ), also it shows\
|
||||
the Output of your choosen Streamer.\
|
||||
This option ist more for debugging purposes and has a tendency to overwhelm you if you are not familiar with that.
|
||||
|
||||
---
|
||||
|
||||
Another Option that affects the 'logging' behavior is
|
||||
|
||||
develop_log: true
|
||||
|
||||
If you enable that option, everytime you restart, your existing log file will be deleted.
|
||||
|
||||
---
|
||||
|
||||
|
37
webcamd
37
webcamd
@ -50,15 +50,28 @@ function init_log_entry {
|
||||
log_msg "Prepare Startup ..."
|
||||
}
|
||||
|
||||
function log_method {
|
||||
local method logfile
|
||||
logfile="$(get_param webcamd log_path | sed "s#^~#$HOME#gi")"
|
||||
method="$(get_param "webcamd" log_method 2> /dev/null)"
|
||||
if [ "${method}" = "debug" ]; then
|
||||
function log_level {
|
||||
local loglevel
|
||||
loglevel="$(get_param webcamd log_level 2> /dev/null)"
|
||||
# Set default log_level to quiet
|
||||
if [ -z "${loglevel}" ] || [[ "${loglevel}" != @(quiet|verbose|debug) ]];
|
||||
then
|
||||
echo "quiet"
|
||||
else
|
||||
echo "${loglevel}"
|
||||
fi
|
||||
}
|
||||
|
||||
function develop {
|
||||
local devel logfile
|
||||
logfile="$(get_param "webcamd" log_path | sed "s#^~#$HOME#gi")"
|
||||
devel="$(get_param "webcamd" develop_log 2> /dev/null)"
|
||||
if [ "${devel}" = "true" ]; then
|
||||
rm -rf "${logfile}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
function log_msg {
|
||||
local msg logfile prefix
|
||||
msg="${1}"
|
||||
@ -74,10 +87,9 @@ function log_msg {
|
||||
|
||||
#call '| log_output "<prefix>"'
|
||||
function log_output {
|
||||
local prefix debug
|
||||
local prefix
|
||||
prefix="DEBUG: ${1}"
|
||||
debug="$(get_param "webcamd" debug_log 2> /dev/null)"
|
||||
if [ "${debug}" == "true" ]; then
|
||||
if [ "$(log_level)" == "debug" ]; then
|
||||
while read -r line; do
|
||||
log_msg "${prefix}: ${line}"
|
||||
done
|
||||
@ -111,7 +123,7 @@ function print_cams {
|
||||
raspicam="$(v4l2-ctl --list-devices | grep -A1 -e 'mmal' | \
|
||||
awk 'NR==2 {print $1}')"
|
||||
log_msg "Detected 'Raspicam' Device -> ${raspicam}"
|
||||
if [ "${debug}" == "true" ]; then
|
||||
if [ ! "$(log_level)" = "quiet" ]; then
|
||||
list_cam_formats "${raspicam}"
|
||||
fi
|
||||
fi
|
||||
@ -124,10 +136,11 @@ function initial_check {
|
||||
check_dep "mjpg_streamer"
|
||||
check_dep "ustreamer"
|
||||
check_dep "v4l2rtspserver"
|
||||
log_msg "INFO: Checking Configfile"
|
||||
if [ -z "$(check_cfg "${WEBCAMD_CFG}")" ]; then
|
||||
if [ "$(log_level)" != "quiet" ]; then
|
||||
print_cfg
|
||||
fi
|
||||
fi
|
||||
log_msg "INFO: Detect available Cameras"
|
||||
print_cams
|
||||
}
|
||||
@ -177,7 +190,7 @@ function detect_avail_cams {
|
||||
echo "${avail}" | while read -r i; do
|
||||
realpath=$(readlink -e ${i})
|
||||
log_msg "${i} -> ${realpath}"
|
||||
if [ "${debug}" == "true" ]; then
|
||||
if [ "$(log_level)" != "quiet" ]; then
|
||||
list_cam_formats "${i}"
|
||||
fi
|
||||
done
|
||||
@ -487,7 +500,7 @@ done
|
||||
trap 'shutdown' 1 2 3 15
|
||||
trap 'err_exit $? $LINENO' ERR
|
||||
|
||||
log_method
|
||||
develop
|
||||
init_log_entry
|
||||
initial_check
|
||||
construct_streamer
|
||||
|
Loading…
x
Reference in New Issue
Block a user