I recently use nagios, tell me please.
In the dashboard I see many messages coming from a server running Windows
How can I overcome this?
nxlog.conf on Windows server configured by default.
Code: Select all
## See the nxlog reference manual at
## http://nxlog.org/nxlog-docs/en/nxlog-reference-manual.html
## Please set the ROOT to the folder your nxlog was installed into,
## otherwise it will not start.
#define ROOT C:\Program Files\nxlog
define ROOT C:\Program Files (x86)\nxlog
define CERT %ROOT%\cert
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
LogFile %ROOT%\data\nxlog.log
# Include fileop while debugging, also enable in the output module below
#<Extension fileop>
# Module xm_fileop
#</Extension>
<Extension json>
Module xm_json
</Extension>
<Extension syslog>
Module xm_syslog
</Extension>
<Input internal>
Module im_internal
</Input>
# Watch your own files
<Input file1>
Module im_file
File '%ROOT%\data\nxlog.log'
SavePos TRUE
Exec $Message = $raw_event;
</Input>
# Windows Event Log
<Input eventlog>
# Uncomment im_msvistalog for Windows Vista/2008 and later
Module im_msvistalog
# Uncomment im_mseventlog for Windows XP/2000/2003
# Module im_mseventlog
</Input>
<Output out>
Module om_tcp
Host zalogg-srv.zim-service.ru
Port 3515
Exec $tmpmessage = $Message; delete($Message); rename_field("tmpmessage","message");
Exec $raw_event = to_json();
# Uncomment for debug output
# Exec file_write('%ROOT%\data\nxlog_output.log', $raw_event + "\n");
</Output>
<Route 1>
Path internal, file1, eventlog => out
</Route>Code: Select all
tcp {
type => 'eventlog'
port => 3515
codec => json {
charset => 'CP1252'
}
}Logstash should use whatever the current codepage is on your Windows machine. For example, my Server 2012 machine is using 437:alexviso wrote: What encoding should I use to make the eventlog come in correctly?
Code: Select all
tcp {
type => 'eventlog'
port => 3515
codec => json {
charset => 'CP437'
}
}

It's hard to say. We didn't write nxlog and my knowledge of how it handles encoding is limited. I've dealt with French systems before, and setting the proper code page in the Logstash input rule typically works around the issue. Unsure if that's also applicable to other languages.alexviso wrote: Why are different encodings used in one message? Although this may be a question for Windows.
Yup, you can do that in the nxlog configuration. Our default nxlog configurations we provide in the Nagios Log Server GUI include this line in the output rule:alexviso wrote:Is it possible to receive eventlog messages without json encapsulation?
Code: Select all
Exec $raw_event = to_json();