%HOSTNAME% не внедряется во все полученные журналы. Они приходят с одного и того же IP-адреса, и большинство из них помечаются. Однако некоторые из них просто не имеют имени хоста перед собой. В этой среде нет DNS из интерфейса, из которого поступают эти журналы. Чтобы справиться с этим, я вставил имя и IP-адрес отправителя в файл hosts ОС, и в большинстве случаев это работает. Ниже пример лога с именем хоста и без.
2022-02-16T11:11:36.093115-07:00 IQM_TYPE_SERVER 10.0.0.41
2022-02-16T11:11:36.094688-07:00 lxdenp1bigip01.example.com iqmgmt_ssl_connect: ошибка SSL: соединение SSL (1)
Вот пользовательские дополнения к конфигу, все остальное по умолчанию.
Версия Rsyslogd — 8.2001.0.
модуль (загрузка = "imudp")
ввод (тип = «imudp» порт = «514» набор правил = «datadog»)
набор правил (имя = "datadog") {
действие (тип = "omfile" файл = "/var/log/dd_stage")
$template DatadogFormat, "отредактировано <%pri%>%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msgid% %msg%\n"
$DefaultNetstreamDriverCAFile /etc/ssl/certs/ca-certificates.crt
$ActionSendStreamDriver gtls
$ActionSendStreamDriverMode 1
$ActionSendStreamDriverAuthMode x509/имя
$ActionSendStreamDriverPermittedPeer *.logs.datadoghq.com
*.* @@intake.logs.datadoghq.com:443;DatadogFormat
}
Отметка $ModLoad
$MarkMessagePeriod 20