[syslog-ng] Syslog messages not stored in separate lines
Dragan Zecevic
dragan.zecevic at live.com
Fri Feb 3 18:53:04 UTC 2023
Hi Evan,
thank you for your reply.
I copied a part of the stored log file below. There is no line break between a lot of syslog messages and then just before (hashtags) this performance output it starts separating lines.
And each performance stat is a new line. After that (right away after hashtags) it starts storing again without line breaks.
This is mostly going on and on like this.
I didn't change windows size so it should be default. Currently there is only one source host sending syslog messages.
...<189>Jan 13 2023 13:29:58+02:00 hostname %%01SSH/5/SSHS_REKEY_STATUS(s):CID=xxx;SSH server key renegotiation with client. (SessionID=1, RekeyReason=Rekey timer timed out, Status=Success, UserAddress=x.y.w.z, LocalAddress=x.y.w.z, VPNInstanceName=_xxx_)<189>Jan 13 2023 13:29:59+02:00 hostname %%01SSH/5/SSHS_REKEY_STATUS(s):CID=xxx;SSH server key renegotiation with client. (SessionID=2, RekeyReason=Rekey timer timed out, Status=Begin, UserAddress=x.y.w.z, LocalAddress=x.y.w.z, VPNInstanceName=_xxx_)<189>Jan 13 2023 13:30:00+02:00 hostname %%01SSH/5/SSHS_REKEY_STATUS(s):CID=xxx;SSH server key renegotiation with client. (SessionID=2, RekeyReason=Rekey timer timed out, Status=Success, UserAddress=x.y.w.z, LocalAddress=x.y.w.z, VPNInstanceName=_xxx_)<190>Jan 13 2023 13:48:30+02:00 hostname %%01DEBUG/6/DBG_HEALTH(l):CID=0x80cc000d;Automatic record:
###########################################
#Automatic record log end,current health information as follows:
<190>Jan 13 2023 13:48:30+02:00 hostname %%01DEBUG/6/DBG_HEALTH(l):CID=xxx;Automatic record:
Slot CPU Memory(Used/Total) Physical Memory Usage(Free/Total/Cache)
--------------------------------------------------------------------------------------
1 IPU(Master) 12% 26% 4006MB/15394MB 34% 10123MB/15396MB/2287MB
CPU0 17%
CPU1 12%
CPU2 13%
CPU3 14%
CPU4 7%
CPU5 11%
ProcessId CPU
1019 1%
1001 3%
1005 0%
1015 41%
1012 0%
3 1%
10001 2%
1006 1%
1018 0%
1000 0%
1013 2%
1003 1%
1007 0%
1010 1%
1008 1%
1016 201%
1017 1%
1014 0%
1011 0%
.<190>Jan 13 2023 13:48:30+02:00 hostname %%01DEBUG/6/DBG_HEALTH(l):CID=xxxx;Automatic record:
#DateTime Stamp:2023-01-13 13:48:30.673
###########################################<188>Jan 13 2023 13:49:16+02:00 hostname %%01SNMP/4/SNMP_MIB_SET(s):CID=xxx;MIB node set. (UserName=xxx, SourceIP=x.y.w.z, DestIP=x.y.w.z, Version=v3, RequestId=xxx, hwCfgOperateType.89005=6,hwCfgOperateProtocol.89005=3,hwCfgOperateFileName.89005=[xxx(hex)],hwCfgOperateServerAddress.89005=x.y.w.z,hwCfgOperateUserName.89005=[xxx(hex)],hwCfgOperateUserPassword.89005=******,hwCfgOperateServerPort.89005=xxx,hwCfgOperateRowStatus.89005=xxx, VPN=xxx)<188>Jan 13 2023 13:49:17+02:00 hostname %%01CONFIGURATION/4/CONFIGMIB_FILE_OPERATE_FINISH(l):CID=xxx;Configuration was copied. (OperationType=6, OptTime=94, OptState=2, OptEndTime=24674900)...
Br,
Dragan
________________________________
From: syslog-ng <syslog-ng-bounces at lists.balabit.hu> on behalf of Evan Rempel <erempel at uvic.ca>
Sent: Thursday, February 2, 2023 2:07 PM
To: syslog-ng at lists.balabit.hu <syslog-ng at lists.balabit.hu>
Subject: Re: [syslog-ng] Syslog messages not stored in separate lines
Is there a line break anywhere in the log file?
If yes
1. is the line break in the middle of a syslog line from this device?
2. is the line break at the maximum message size?
3. is the line break at the end of a log message from a different device that is logging to the same s_xxx_xxx source?
What I am wondering is that the source of the log messages is logging the exact same stream of data to the TCP port that it would have over the UDP port (which would be an error). UDP messages are not terminated with a new line, while the TCP messages are. If that were the case then syslog-ng would never see multiple messages, and would write a continuous stream on a single line until it reached the maximum message length, or it logged a correctly terminated message from a different device.
Evan.
On 2023-02-02 05:55, Dragan Zecevic wrote:
Hi Balazs,
this is how the whole config snippet looks like:
source s_xxx_xxx {
network(
ip(0.0.0.0)
transport(tcp)
port(xxxx)
flags(store-raw-message)
);
};
filter filter_xxx_xxx {
host("xxx") or host("xxx") ...;
};
destination folder_xxx_xxx {
file(
"/xxx/.../xxx/${R_YEAR}${R_MONTH}${R_DAY}/${SOURCEIP}_${HOST}_${R_HOUR}.log"
template("${RAWMSG}\n")
dir-group(xxx)
dir-perm(xxx)
group(xxx)
);
};
log {
source(s_xxx_xxx); filter(filter_xxx_xxx); destination(folder_xxx_xxx);
};
Sorry for the xxx but I can't export real parameters in conversation like this. Also, I can't provide some pcap or tcpdump.
I restarted syslog-ng multiple times because I also added some other sources and there were no error messages. And this is the only part of the configuration where either this destination or folder are used.
I hope this info is helpful.
Thanks,
Dragan
________________________________
From: syslog-ng <syslog-ng-bounces at lists.balabit.hu><mailto:syslog-ng-bounces at lists.balabit.hu> on behalf of Balazs Scheidler <bazsi77 at gmail.com><mailto:bazsi77 at gmail.com>
Sent: Tuesday, January 31, 2023 9:18 PM
To: Syslog-ng users' and developers' mailing list <syslog-ng at lists.balabit.hu><mailto:syslog-ng at lists.balabit.hu>
Subject: Re: [syslog-ng] Syslog messages not stored in separate lines
If there's an initialization error with a config at reloading, syslog-ng can fall back to the old one. Can this happen? Or two destinations writing the same file?
If the problem persists, can you create minimal example with complete with config and sample message that you send and which reproduces the issue?
Thanks
On Tue, Jan 31, 2023, 20:44 Dragan Zecevic <dragan.zecevic at live.com<mailto:dragan.zecevic at live.com>> wrote:
Hi Balazs,
thank you for your reply.
Yes, I used config like this for other sources as well and restarted syslog-ng service.
I don't get it why it doesn't work in this case. I was thinking it is up to the input.
________________________________
From: syslog-ng <syslog-ng-bounces at lists.balabit.hu<mailto:syslog-ng-bounces at lists.balabit.hu>> on behalf of Balazs Scheidler <bazsi77 at gmail.com<mailto:bazsi77 at gmail.com>>
Sent: Monday, January 30, 2023 6:48 AM
To: Syslog-ng users' and developers' mailing list <syslog-ng at lists.balabit.hu<mailto:syslog-ng at lists.balabit.hu>>
Subject: Re: [syslog-ng] Syslog messages not stored in separate lines
This would be very strange indeed as the template of your file destination includes a newline character at the end of every message, so it should not depend on the input.
You sure that this is the destination config that you quote here? Did you reload syslog-ng to use that config?
On Sun, Jan 29, 2023, 13:55 Dragan Zecevic <dragan.zecevic at live.com<mailto:dragan.zecevic at live.com>> wrote:
Hi,
I am collecting logs from a network device. They configured syslog format on their source side to be RFC3164.
On syslog-ng side I am using source and destination like this:
source s_xxx {
network(
ip(0.0.0.0)
transport(tcp)
port(xxx)
flags(store-raw-message)
);
};
destination folder_xxx {
file(
"/xxx/${R_YEAR}${R_MONTH}${R_DAY}/${SOURCEIP}_${HOST}_${R_HOUR}.log"
template("${RAWMSG}\n")
);
};
syslog-ng version 3.34
CentOS Linux release 7.9.2009
The problem is that syslog messages are stored in raw format but not separated in different line. Parity bit of new message starts imidiatelly after previous line -without space or enter.
I have the same config for some other hosts and there log files are created with separate lines. Vendor says they can't change anything on source side.
Do you have any idea what is the cause of this?
Thank you.
Br,
Dragan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.balabit.hu/pipermail/syslog-ng/attachments/20230203/9fced7f2/attachment-0001.htm>
More information about the syslog-ng
mailing list