summaryrefslogtreecommitdiff
path: root/systemd
diff options
context:
space:
mode:
authorChristian Muck <christian.muck@bmw.de>2012-06-04 09:08:52 +0200
committerChristian Muck <christian.muck@bmw.de>2012-06-13 23:52:51 +0200
commit85f564f2b4c580bc151d05559e6ed0614919da8a (patch)
tree96c41c00f70fb5545862cea3e62b26867117e33b /systemd
parentde0b686c504886187aa1e8ba4373daeff66283e5 (diff)
downloadDLT-daemon-85f564f2b4c580bc151d05559e6ed0614919da8a.tar.gz
[GDLT-90] Implemented systemd watchdog concept in dlt-system
Signed-off-by: Christian Muck <christian.muck@bmw.de>
Diffstat (limited to 'systemd')
-rw-r--r--systemd/CMakeLists.txt40
-rw-r--r--systemd/dlt-adaptor-udp.service.cmake28
-rw-r--r--[-rwxr-xr-x]systemd/dlt-example-user.service.cmake (renamed from systemd/dlt-syslog.service.cmake)50
-rw-r--r--systemd/dlt-receive.service.cmake26
-rwxr-xr-xsystemd/dlt-system.service.cmake31
-rwxr-xr-xsystemd/dlt.service.cmake10
6 files changed, 144 insertions, 41 deletions
diff --git a/systemd/CMakeLists.txt b/systemd/CMakeLists.txt
index 7411364..d01c1ef 100644
--- a/systemd/CMakeLists.txt
+++ b/systemd/CMakeLists.txt
@@ -15,26 +15,46 @@
########
if(WITH_SYSTEMD)
+
set(SYSTEMD_CONFIGURATIONS_FILES_DIR "/lib/systemd/system" )
if(WITH_SYSTEMD_WATCHDOG)
set( DLT_WatchdogSec 2 )
- message( STATUS "The systemd watchdog is enabled for DLT daemon - timeout is set to ${DLT_WatchdogSec} seconds")
+ message( STATUS "The systemd watchdog is enabled - timeout is set to ${DLT_WatchdogSec} seconds")
else(WITH_SYSTEMD_WATCHDOG)
set( DLT_WatchdogSec 0 )
- message( STATUS "The systemd watchdog is disabled for DLT daemon")
+ message( STATUS "The systemd watchdog is disabled")
endif(WITH_SYSTEMD_WATCHDOG)
configure_file(${CMAKE_SOURCE_DIR}/systemd/dlt.service.cmake ${PROJECT_BINARY_DIR}/systemd/dlt.service)
- install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
message( STATUS "Configured systemd unit file:dlt.service" )
- set( DLT_SYSLOG_APPID "SYS" )
- set( DLT_SYSLOG_CTID "LOG" )
- set( DLT_SYSLOG_PORT 4712 )
- message(STATUS "DLT-syslog configuration: APPID:${DLT_SYSLOG_APPID} CTID:${DLT_SYSLOG_CTID} PORT:${DLT_SYSLOG_PORT}" )
- configure_file(${CMAKE_SOURCE_DIR}/systemd/dlt-syslog.service.cmake ${PROJECT_BINARY_DIR}/systemd/dlt-syslog.service)
- install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt-syslog.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
- message( STATUS "Configured systemd unit file:dlt-syslog.service" )
+ configure_file(${CMAKE_SOURCE_DIR}/systemd/dlt-system.service.cmake ${PROJECT_BINARY_DIR}/systemd/dlt-system.service)
+ message( STATUS "Configured systemd unit file:dlt-system.service" )
+
+ configure_file(${CMAKE_SOURCE_DIR}/systemd/dlt-receive.service.cmake ${PROJECT_BINARY_DIR}/systemd/dlt-receive.service)
+ message( STATUS "Configured systemd unit file:dlt-receive.service" )
+
+ configure_file(${CMAKE_SOURCE_DIR}/systemd/dlt-example-user.service.cmake ${PROJECT_BINARY_DIR}/systemd/dlt-example-user.service)
+ message( STATUS "Configured systemd unit file:dlt-example-user.service" )
+
+ set( DLT_ADAPTOR_UDP_APPID "DUDP" )
+ set( DLT_ADAPTOR_UDP_CTID "DCTI" )
+ set( DLT_ADAPTOR_UDP_PORT 4712 )
+ configure_file(${CMAKE_SOURCE_DIR}/systemd/dlt-adaptor-udp.service.cmake ${PROJECT_BINARY_DIR}/systemd/dlt-adaptor-udp.service)
+ message( STATUS "Configured systemd unit file:dlt-adaptor-udp.service" )
+ message(STATUS "DLT adaptor udp configuration: APPID=${DLT_ADAPTOR_UDP_APPID} CTID=${DLT_ADAPTOR_UDP_CTID} PORT=${DLT_ADAPTOR_UDP_PORT}" )
+
+ if(EXISTS ${SYSTEMD_CONFIGURATIONS_FILES_DIR})
+ install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
+ install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt-system.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
+ install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt-receive.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
+ install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt-example-user.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
+ install(FILES ${PROJECT_BINARY_DIR}/systemd/dlt-adaptor-udp.service DESTINATION ${SYSTEMD_CONFIGURATIONS_FILES_DIR} )
+ message(STATUS "Unit files will be installed to ${SYSTEMD_CONFIGURATIONS_FILES_DIR} after make install" )
+ else(EXISTS ${SYSTEMD_CONFIGURATIONS_FILES_DIR})
+ message(STATUS "Unit files will not be installed to ${SYSTEMD_CONFIGURATIONS_FILES_DIR} after make install")
+ endif(EXISTS ${SYSTEMD_CONFIGURATIONS_FILES_DIR})
+
endif(WITH_SYSTEMD) \ No newline at end of file
diff --git a/systemd/dlt-adaptor-udp.service.cmake b/systemd/dlt-adaptor-udp.service.cmake
new file mode 100644
index 0000000..0c39637
--- /dev/null
+++ b/systemd/dlt-adaptor-udp.service.cmake
@@ -0,0 +1,28 @@
+#######
+# Dlt - Diagnostic Log and Trace
+# @licence make begin@
+#
+# Copyright (C) 2011-2012, BMW AG - Alexander Wenzel <alexander.aw.wenzel@bmw.de>
+#
+# Contributions are licensed to the GENIVI Alliance under one or more
+# Contribution License Agreements.
+#
+# This Source Code Form is subject to the terms of the
+# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# @licence end@
+########
+
+[Unit]
+Description=GENIVI DLT adaptor stdin. Adaptor for forwarding received UDP messages to DLT daemon.
+Wants=dlt.service
+
+[Service]
+Type=Simple
+User=genivi
+ExecStart=@CMAKE_INSTALL_PREFIX@/bin/dlt-adaptor-udp -a @DLT_ADAPTOR_UDP_APPID@ -c @DLT_ADAPTOR_UDP_CTID@ -p @DLT_ADAPTOR_UDP_PORT@
+LimitCORE=infinity
+
+[Install]
+WantedBy=multi-user.target \ No newline at end of file
diff --git a/systemd/dlt-syslog.service.cmake b/systemd/dlt-example-user.service.cmake
index a962841..3652292 100755..100644
--- a/systemd/dlt-syslog.service.cmake
+++ b/systemd/dlt-example-user.service.cmake
@@ -1,25 +1,25 @@
-#######
-# Dlt - Diagnostic Log and Trace
-# @licence make begin@
-#
-# Copyright (C) 2011-2012, BMW AG - Alexander Wenzel <alexander.aw.wenzel@bmw.de>
-#
-# Contributions are licensed to the GENIVI Alliance under one or more
-# Contribution License Agreements.
-#
-# This Source Code Form is subject to the terms of the
-# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
-# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# @licence end@
-########
-
-[Unit]
-Description=DLT Syslog Adapter
-
-[Service]
-ExecStart=@CMAKE_INSTALL_PREFIX@/bin/dlt-adaptor-udp -a @DLT_SYSLOG_APPID@ -c @DLT_SYSLOG_CTID@ -p @DLT_SYSLOG_PORT@
-# Restart=always
-
-[Install]
-WantedBy=basic.target
+#######
+# Dlt - Diagnostic Log and Trace
+# @licence make begin@
+#
+# Copyright (C) 2011-2012, BMW AG - Alexander Wenzel <alexander.aw.wenzel@bmw.de>
+#
+# Contributions are licensed to the GENIVI Alliance under one or more
+# Contribution License Agreements.
+#
+# This Source Code Form is subject to the terms of the
+# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# @licence end@
+########
+
+[Unit]
+Description=GENIVI DLT example user. Generate DLT messages and store them to file or send them to daemon.
+Wants=dlt.service
+
+[Service]
+Type=Simple
+User=genivi
+ExecStart=@CMAKE_INSTALL_PREFIX@/bin/dlt-example-user "Hallo from GENIVI DLT example user application"
+LimitCORE=infinity \ No newline at end of file
diff --git a/systemd/dlt-receive.service.cmake b/systemd/dlt-receive.service.cmake
new file mode 100644
index 0000000..b92c8b2
--- /dev/null
+++ b/systemd/dlt-receive.service.cmake
@@ -0,0 +1,26 @@
+#######
+# Dlt - Diagnostic Log and Trace
+# @licence make begin@
+#
+# Copyright (C) 2011-2012, BMW AG - Alexander Wenzel <alexander.aw.wenzel@bmw.de>
+#
+# Contributions are licensed to the GENIVI Alliance under one or more
+# Contribution License Agreements.
+#
+# This Source Code Form is subject to the terms of the
+# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# @licence end@
+########
+
+[Unit]
+Description=GENIVI DLT receive. Receive DLT messages from DLT daemon and print or store the messages.
+Documentation=man:dlt-receive(1)
+Wants=dlt.service
+
+[Service]
+Type=Simple
+User=genivi
+ExecStart=@CMAKE_INSTALL_PREFIX@/bin/dlt-receive -o /tmp/dlt_receive_log.dlt localhost
+LimitCORE=infinity \ No newline at end of file
diff --git a/systemd/dlt-system.service.cmake b/systemd/dlt-system.service.cmake
new file mode 100755
index 0000000..fc30f74
--- /dev/null
+++ b/systemd/dlt-system.service.cmake
@@ -0,0 +1,31 @@
+#######
+# Dlt - Diagnostic Log and Trace
+# @licence make begin@
+#
+# Copyright (C) 2011-2012, BMW AG - Alexander Wenzel <alexander.aw.wenzel@bmw.de>
+#
+# Contributions are licensed to the GENIVI Alliance under one or more
+# Contribution License Agreements.
+#
+# This Source Code Form is subject to the terms of the
+# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# @licence end@
+########
+
+[Unit]
+Description=GENIVI DLT system. Application to forward syslog messages to DLT, transfer system information, logs and files.
+Documentation=man:dlt-system(1) man:dlt-system.conf(5)
+Wants=dlt.service
+
+[Service]
+Type=Simple
+User=genivi
+ExecStart=@CMAKE_INSTALL_PREFIX@/bin/dlt-system
+WatchdogSec=@DLT_WatchdogSec@
+NotifyAccess=main
+LimitCORE=infinity
+
+[Install]
+WantedBy=basic.target \ No newline at end of file
diff --git a/systemd/dlt.service.cmake b/systemd/dlt.service.cmake
index 43cb319..22279c4 100755
--- a/systemd/dlt.service.cmake
+++ b/systemd/dlt.service.cmake
@@ -15,18 +15,16 @@
########
[Unit]
-Description=GENIVI DLT
-Documentation=dlt-daemon(1) dlt.conf(5)
+Description=GENIVI DLT logging daemon
+Documentation=man:dlt-daemon(1) man:dlt.conf(5)
[Service]
Type=Simple
User=genivi
-#ExecStartPre=rm /tmp/dlt
ExecStart=@CMAKE_INSTALL_PREFIX@/bin/dlt-daemon
WatchdogSec=@DLT_WatchdogSec@
NotifyAccess=main
-#RestartSec=2
-#Restart=always
+LimitCORE=infinity
[Install]
-WantedBy=multi-user.target
+WantedBy=basic.target