You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
132 lines
4.6 KiB
132 lines
4.6 KiB
# Copyright (c) 2021 Nordic Semiconductor ASA |
|
# SPDX-License-Identifier: Apache-2.0 |
|
|
|
# Immediate mode cannot be used with network backend as it would cause the sent |
|
# rsyslog message to be malformed. |
|
config LOG_BACKEND_NET |
|
bool "Networking backend" |
|
depends on NETWORKING && (NET_UDP || NET_TCP) && !LOG_MODE_IMMEDIATE |
|
help |
|
Send syslog messages to network server. |
|
See RFC 5424 (syslog protocol) and RFC 5426 (syslog over UDP) and |
|
RFC 6587 (syslog over TCP) specifications for details. |
|
|
|
if LOG_BACKEND_NET |
|
|
|
config LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
bool "Print structured data according to RFC 5424" |
|
help |
|
Print additional structured data as described in |
|
RFC 5424 chapter 6.3. Note that this might increase the |
|
length of the syslog message a lot. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_TZKNOWN |
|
bool "RFC 5424 chapter 7.1.1 tzKnown field" |
|
depends on LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
help |
|
The tzKnown parameter indicates whether the originator knows its time zone. |
|
See RFC 5424 chapter 7.1 for details. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_ISSYNCED |
|
bool "RFC 5424 chapter 7.1.2 isSynced field" |
|
depends on LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
help |
|
The isSynced parameter indicates whether the originator is |
|
synchronized to a reliable external time source, e.g., via NTP. |
|
See RFC 5424 chapter 7.1 for details. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_SOFTWARE |
|
bool "RFC 5424 chapter 7.2.3 software description field" |
|
depends on LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
help |
|
Software description parameter uniquely identifies the software that |
|
generated the message. |
|
See RFC 5424 chapter 7.2 for details. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_SOFTWARE_VALUE |
|
string "RFC 5424 chapter 7.2.3 software field value" |
|
default "zephyr" |
|
depends on LOG_BACKEND_NET_RFC5424_SDATA_SOFTWARE |
|
help |
|
User defined value for the software field. |
|
See RFC 5424 chapter 7.2.3 for details. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_SOFTWARE_VERSION |
|
bool "RFC 5424 chapter 7.2.4 software version field" |
|
depends on LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
help |
|
Software version parameter uniquely identifies the software that |
|
generated the message. |
|
See RFC 5424 chapter 7.2.4 for details. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_SEQID |
|
bool "RFC 5424 chapter 7.3.1 sequence id field" |
|
depends on LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
help |
|
Sequence id parameter tracks the sequence in which the |
|
originator submits messages to the syslog transport for sending. |
|
See RFC 5424 chapter 7.3.1 for details. |
|
|
|
config LOG_BACKEND_NET_RFC5424_SDATA_UPTIME |
|
bool "RFC 5424 chapter 7.3.2 system uptime field" |
|
depends on LOG_BACKEND_NET_RFC5424_STRUCTURED_DATA |
|
help |
|
The system uptime parameter tracks the "time (in hundredths of a |
|
second) since the network management portion of the system was last |
|
re-initialized." For Zephyr this is currently interpreted as the |
|
system uptime. |
|
See RFC 5424 chapter 7.3.2 for details. |
|
|
|
config LOG_BACKEND_NET_SERVER |
|
string "Syslog server IP address" |
|
help |
|
This can be either IPv4 or IPv6 address. |
|
Server listen UDP port number can be configured here too. |
|
Following syntax is supported: |
|
192.0.2.1:514 |
|
192.0.2.42 |
|
[2001:db8::1]:514 |
|
[2001:db8::2] |
|
2001:db::42 |
|
If you want to use TCP, add "tcp://" in front of the address |
|
like this |
|
tcp://192.0.2.1:514 |
|
tcp://192.0.2.42 |
|
tcp://[2001:db8::1]:514 |
|
UDP is used by default if the URI is missing. |
|
|
|
config LOG_BACKEND_NET_MAX_BUF_SIZE |
|
int "Max syslog message size" |
|
range 64 1180 |
|
default 1180 if NET_IPV6 |
|
default 480 if NET_IPV4 |
|
default 256 |
|
help |
|
As each syslog message needs to fit to UDP packet, set this value |
|
so that messages are not truncated. |
|
The RFC 5426 recommends that for IPv4 the size is 480 octets and for |
|
IPv6 the size is 1180 octets. As each buffer will use RAM, the value |
|
should be selected so that typical messages will fit the buffer. |
|
|
|
config LOG_BACKEND_NET_AUTOSTART |
|
bool "Automatically start networking backend" |
|
default y if NET_CONFIG_NEED_IPV4 || NET_CONFIG_NEED_IPV6 |
|
help |
|
When enabled automatically start the networking backend on |
|
application start. If no routes to the logging server are available |
|
on application startup, this must be set to n and the backend must be |
|
started by the application later on. Otherwise the logging |
|
thread might block. |
|
|
|
config LOG_BACKEND_NET_USE_DHCPV4_OPTION |
|
bool "Use DHCPv4 Log Server Option to configure syslog server" |
|
depends on NET_DHCPV4 |
|
help |
|
When enabled the syslog server IP address is read from the DHCPv4 |
|
Log Server Option (7). |
|
|
|
backend = NET |
|
backend-str = net |
|
source "subsys/logging/Kconfig.template.log_format_config" |
|
|
|
endif # LOG_BACKEND_NET
|
|
|