DLT-RECEIVE(1)

πŸ’– DLT-RECEIVE(1) πŸ’–

okay bestie, welcome to dlt-receive β€” it's a console based client for DLT Logging, and yes it lives in the General Commands Manual section. it's giving "tiny tool, huge power" and we're obsessed 🫢


✨ NAME ✨

dlt-receive β€” Console based client for DLT Logging πŸ’…


🌸 SYNOPSIS 🌸

dlt-receive [-h] [-a] [-x] [-m] [-s] [-o filename] [-c limit] [-v] [-y]
[-b baudrate] [-e ecuid] [-f filterfile] [-j filterfile] [-p port]
hostname/serial_device_name

yep that's the whole vibe. hostname or serial_device_name at the end, no exceptions, she needs to know where to pull the messages from. πŸ¦‹


πŸ‘‘ DESCRIPTION πŸ‘‘

so basically: dlt-receive receives DLT messages from the DLT daemon and then either prints them or stores them. that's the whole job. main character energy, honestly. ⭐


πŸŽ€ OPTIONS πŸŽ€

  • -h β€” shows you a short help text. baby's first flag, love that for you ✨
  • -a β€” prints the DLT file, with the payload as ASCII.
  • -x β€” prints the DLT file, with the payload as hex.
  • -m β€” prints the DLT file, payload as hex and ASCII. why choose, right? πŸ’…
  • -s β€” prints the DLT file, only the headers. no payload, just the glamour shots.
  • -o β€” outputs the messages into a new DLT file.
  • -c β€” sets the limit for when messages get stored into a file. once the limit is hit, a brand new file gets opened. you can suffix with K, M, or G for kilo-, mega-, giga-bytes respectively β€” like 1M for one megabyte. (Default: unlimited.) πŸ“
  • -v β€” verbose mode. she talks more. we love a chatty queen. 😭
  • -S β€” send message with serial header (Default: Without serial header).
  • -R β€” enable resync serial header.
  • -y β€” serial device mode.
  • -b β€” serial device baudrate (Default: 115200).
  • -e β€” set the ECU ID (Default: RECV).
  • -f β€” enable filtering of messages. takes a space separated filter file (peep the Space separated filter file section below, bestie).
  • -j β€” enable extended filtering of messages. takes a json filter file (see Json filter file).
  • -p β€” port for UDP and TCP communication (Default: 3490).

πŸ”₯ EXAMPLES πŸ”₯

print the received message headers that came from a dlt-daemon running on localhost:

dlt-receive -s localhost

print the received message headers that came from a serial interface:

dlt-receive -s -y /dev/ttySO

store the received message headers from a dlt-daemon into a log file called log.dlt, and filter them for, like, Application ID ABCD and Context ID EFGH β€” write ABCD EFGH as a single line into a file called filter.txt:

dlt-receive -s -o log.dlt -f filter.txt localhost

store incoming messages into file(s) and cap the file sizes at 1 megabyte. when the limit is reached, log.dlt gets renamed into log.0.dlt, log.1.dlt, … and no files get overwritten in this mode, periodt:

dlt-receive -o log.dlt -c 1M localhost

🧚 Space separated filter file

a file that defines multiple filters, and it can be passed as the argument for the -f option. with this one you can only filter messages based on their Application ID and/or Context ID. the syntax is: first the AppID, then an optional CtxID right behind it, with a space in between. each line = one filter, and the max number of filters is 30. the CtxID can be a wildcard: β€”- (compatible) or * (new updated). ✨

Example:

DLTD INTM
QSYM ----
TEST *

🌈 Json filter file

only available when built with the cmake option WITH_EXTENDED_FILTERING. πŸ‘‘

a file that defines multiple filters, and it can be passed as the argument for the -j option. with this one you can also filter messages based on their Application ID, Context ID, log level, and payload size. the example below shows the syntax. the filter names can be customized but can't be longer than 15 characters. the max number of filters is also 30. πŸ¦‹

Example:

{
"filter1": {
    "AppId": "LOG",
    "ContextId": "TEST",
    "LogLevel": "3"
    },
"filter2": {
    "AppId": "app",
    "LogLevel": "4"
    },
"filter3": {
    "AppId": "app2",
    "ContextId": "con2",
    "PayloadMin": "20",
    "PayloadMax": "50"
    }
}

πŸ’€ EXIT STATUS πŸ’€

non zero is returned in case of failure. so like, if it's 0 you're slaying, if it's not, something went wrong bestie. 😭


πŸ™ˆ NOTES πŸ™ˆ

be aware that dlt-receive will never delete any files. instead, it creates a new file. no cap. your old logs are safe, she's not that kind of girl. πŸ’–

πŸ’œ AUTHOR πŸ’œ

Alexander Wenzel (alexander.aw.wenzel (at) bmw (dot) de)


Copyright (C) 2015 BMW AG. License MPL-2.0: Mozilla Public License version 2.0 http://mozilla.org/MPL/2.0/.


πŸŽ€ BUGS πŸŽ€

See Github issue: https://github.com/COVESA/dlt-daemon/issues


⭐ SEE ALSO ⭐

dlt-daemon(1)


okay that's the whole page, bestie, go forth and receive those messages πŸ’…βœ¨ this was DLT-RECEIVE(1) from the General Commands Manual β€” mwah, take care of her πŸ«ΆπŸŽ€

πŸ“¦ where this page comes from