OpenSuSE Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
x SuSE Linux 13.1-RELEASE x
x SuSE Linux 13.1-RELEASEx
SD_WATCHDOG_ENABLED(3)        sd_watchdog_enabled       SD_WATCHDOG_ENABLED(3)

NAME
       sd_watchdog_enabled - Check whether the service manager expects
       watchdog keep-alive notifications from a service

SYNOPSIS
       #include <systemd/sd-daemon.h>

       int sd_watchdog_enabled(int unset_environment, uint64_t *usec);

DESCRIPTION
       sd_watchdog_enabled() may be called by a service to detect whether the
       service manager expects regular keep-alive watchdog notification events
       from it, and the timeout after which the manager will act on the
       service if it did not get such a notification.

       If the $WATCHDOG_USEC environment variable is set, and the
       $WATCHDOG_PID variable is unset or set to the PID of the current
       process, the service manager expects notifications from this process.
       The manager will usually terminate a service when it does not get a
       notification message within the specified time after startup and after
       each previous message. It is recommended that a daemon sends a
       keep-alive notification message to the service manager every half of
       the time returned here. Notification messages may be sent with
       sd_notify(3) with a message string of "WATCHDOG=1".

       If the unset_environment parameter is non-zero, sd_watchdog_enabled()
       will unset the $WATCHDOG_USEC and $WATCHDOG_PID environment variables
       before returning (regardless of whether the function call itself
       succeeded or not). Those variables are no longer inherited by child
       processes. Further calls to sd_watchdog_enabled() will also return with
       zero.

       If the usec parameter is non-NULL, sd_watchdog_enabled() will write the
       timeout in <mu>s for the watchdog logic to it.

       To enable service supervision with the watchdog logic, use WatchdogSec=
       in service files. See systemd.service(5) for details.

       Use sd_event_set_watchdog(3) to enable automatic watchdog support in
       sd-event(3)-based event loops.

RETURN VALUE
       On failure, this call returns a negative errno-style error code. If the
       service manager expects watchdog keep-alive notification messages to be
       sent, > 0 is returned, otherwise 0 is returned. Only if the return
       value is > 0, the usec parameter is valid after the call.

NOTES
       Functions described here are available as a shared library, which can
       be compiled against and linked to with the libsystemd pkg-config(1)
       file.

       The code described here uses getenv(3), which is declared to be not
       multi-thread-safe. This means that the code calling the functions
       described here must not call setenv(3) from a parallel thread. It is
       recommended to only do calls to setenv() from an early phase of the
       program when no other threads have been started.

       Internally, this function parses the $WATCHDOG_PID and $WATCHDOG_USEC
       environment variable. The call will ignore these variables if
       $WATCHDOG_PID does not contain the PID of the current process, under
       the assumption that in that case, the variables were set for a
       different process further up the process tree.

ENVIRONMENT
       $WATCHDOG_PID
           Set by the system manager for supervised process for which watchdog
           support is enabled, and contains the PID of that process. See above
           for details.

       $WATCHDOG_USEC
           Set by the system manager for supervised process for which watchdog
           support is enabled, and contains the watchdog timeout in <mu>s. See
           above for details.

SEE ALSO
       systemd(1), sd-daemon(3), daemon(7), systemd.service(5), sd_notify(3),
       sd_event_set_watchdog(3)

systemd 254                                             SD_WATCHDOG_ENABLED(3)

Want to link to this manual page? Use this URL:
<
http://star2.abcm.com/cgi-bin/bsdi-man?query=sd_watchdog_enabled&sektion=3&manpath=>

home | help