As described in #13873, from 23.05.0 onwards logging to a file on an
external filesystem fails under some conditions.
This occurs because the log initscript had code added to prevent start
logging to an external filesystem on boot, and added a trigger to start
said logging when the external filesystem gets mounted.
The issue is that for filesystems mount with fstab uci, the fstab
scripts runs at START=11, while log runs at START=12, which means the
external filesystem may already be mounted by the time the log initscript
runs. Since the external filesystem is already mounted it does not
trigger a hotplug event to trigger the trigger to start logging. This
combination means the logging never automatically starts when the log
file is on an external filesystem.
We therefore add a check for the presence of a mounted filesystem when
the log file is being sent to an fstab mounted filesystem. If the
filesystem is mounted, we don't skip starting logging during boot.
If the filesystem is not mounted then file logging is not started and
the trigger will start the logging when the filesystem is mounted.
Signed-off-by: Daniel F. Dickinson <dfdpublic@wildtechgarden.ca>
[improved commit message]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Just use 'start' action which will have the desired effect instead of
trying to introduce a 'start_file' action which didn't work that way
because procd jshn magic would have to wrap around it.
Fixes: 88baf6ce2c ("ubox: only start log to file when filesystem has been mounted")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
If log_file is on an filesystem mounted using /etc/config/fstab we have
to wait for that to happen before starting the logread process.
Inhibit the start of the file-writer process and use a mount trigger to
fire it up once the filesystem actually becomes available.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
The underlying logread process uses usock() to handle remote connections
which is able to handle both hostnames and IP addresses.
Ref: https://github.com/openwrt/luci/issues/5077
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
commit eb204d14f75c ("base-files: implement generic service_running")
introduced generic service_running so it's not needed to copy&paste same
3 lines over and over again.
I've removed service_running from netifd/network init script as well,
because it was not working properly, looked quite strange and I didn't
understand the intention:
$ /etc/init.d/network stop
$ service network running && echo "yes" || echo "nope"
( have to wait for 30s )
Command failed: Request timed out
yes
Signed-off-by: Petr Štetiar <ynezz@true.cz>
This adds a wrapper (uci_load_validate) for uci_validate_section() that
allows callers (through a callback function) to access the values set by
uci_validate_section(), without having to manually declare a
(potentially long) list of local variables.
The callback function receives two arguments when called, the config
section name and the return value of uci_validate_section().
If no callback function is given, then the wrapper exits with the value
returned by uci_validate_section().
This also updates several init scripts to use the new wrapper function.
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
If log_file is specified, make sure its directory exists.
Signed-off-by: Karl Palsson <karlp@etactica.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
128bc35 logread: fix reconnect logd logic
66347ec logread: move the code setting up the request blob out of the main loop
975a258 logread: move output connection setup code out of main loop
b81bea7 logread: cleanup pid file handling
d73e7d2 ubox: Replace strerror(errno) with %m format.
Signed-off-by: John Crispin <john@phrozen.org>
Increase the default system log buffer size
from 16 kB (default both in logd source and in the startup script)
to 64 kB by adjusting the default value in startup script.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
this allow us to use syslog tcp with \0 trailer
instead of \n trailer (logread -0 option)
Signed-off-by: Etienne CHAMPETIER <champetier.etienne@gmail.com>
SVN-Revision: 45329
somebody started to set a function returncode in the validation
stuff and everybody copies it, e.g.
myfunction()
{
fire_command
return $?
}
a function automatically returns with the last returncode,
so we can safely remove the command 'return $?'. reference:
http://tldp.org/LDP/abs/html/exit-status.html
"The last command executed in the function or script determines the exit status."
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 42278
in r41439 a flag for enabling remote logging was added,
but the actual check was done on a different variable.
Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>
SVN-Revision: 41467
use the fd handover api of ubus to transfer log data
the uci option log_buffer_size can be used to override the default size of 16k
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 39898
move log service from procd to ubox
some debloating on procd
the preinit part of procd is now also a seperate binary
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 38822
2013-11-16 20:20:30 +00:00
Renamed from package/system/procd/files/log.init (Browse further)