2016-10-07 6 views
0

이미 NXlog를 통해 Graylog2에 로그를 보냈습니다. 그러나 NXlog와 Graylog2는 모두 동일한 서버에서 실행됩니다. 이제 다른 서버의 로그를 NXlog를 통해 Graylog2로 보내고 싶지만 전혀 작동하지 않습니다. 너 나 좀 도와 줄래? 이 내 NXlog 구성입니다 :NXLog를 Graylog2에 연결하십시오.

User i_cdp 
Group int 

Panic Soft 

#define CERTDIR /opt/cdp/nxlog/opt/var/lib/nxlog/cert 
define CONFDIR /opt/cdp/nxlog/opt/var/lib/nxlog 
define LOGDIR /opt/cdp/nxlog/opt/var/log/nxlog 
define LOGFILE "%LOGDIR%/nxlog.log" 

SpoolDir /opt/cdp/nxlog/opt/var/spool/nxlog 

# default values: 
PidFile /opt/cdp/nxlog/opt/var/run/nxlog/nxlog.pid 
CacheDir /opt/cdp/nxlog/opt/var/spool/nxlog 
ModuleDir /opt/cdp/nxlog/opt/libexec/nxlog/modules 

<Extension _syslog> 
    Module  xm_syslog 
</Extension> 


<Extension gelf> 
    Module  xm_gelf 
</Extension> 

<Input in> 
    Module  im_file 
    File  "/opt/cdp/jboss-eap/jboss/standalone/log/*.log*" 
    Exec if $raw_event =~ /(\d\d\d\d\-\d\d-\d\d \d\d:\d\d:\d\d)/ $EventTime = parsedate($1); 
    Exec $Hostname = 'bsul0850'; 
    Exec if $raw_event =~ /ERROR/ $SyslogSeverityValue = 3; \ 
    else $SyslogSeverityValue = 6; 
    Exec $FileName = file_name(); 
    Exec if $raw_event =~ /WARN/ $Message = 'IMPORTANT!! ' + $raw_event; 
    Exec $SourceName = 'jboss'; 
</Input> 


<Output out> 
    Module om_udp 
    Host 10.41.66.84 
    Port 12009 
    OutputType GELF 
</Output> 


<Route r1> 
    Path  in => out 
</Route> 

<Extension _charconv> 
    Module  xm_charconv 
    AutodetectCharsets iso8859-2, utf-8, utf-16, utf-32 
</Extension> 

<Extension _exec> 
    Module  xm_exec 
</Extension> 

<Extension _fileop> 
    Module  xm_fileop 
    # Check the size of our log file every hour and rotate if it is larger than 5Mb 
    <Schedule> 
     Every 1 hour 
     Exec if (file_exists(%LOGFILE%) and (file_size(%LOGFILE%) >= 5M)) file_cycle(%LOGFILE%, 8); 
    </Schedule> 

    # Rotate our log file every week on sunday at midnight 
    <Schedule> 
     When @weekly 
     Exec if file_exists(%LOGFILE%) file_cycle(%LOGFILE%, 8); 
    </Schedule> 
</Extension> 

내가 Nxlog와 서버와 Graylog2와 서버 사이의 연결을위한 포트 12009을 열었습니다. 그리고 나는 Graylog - 구이에 입력을 구성 : Input(GELF UDP on Port 12009) 을하지만 wehen 내가 연결을 확인, 난 단지 얻을 :

[[email protected] etc]$ ssh -vvv bsul0959 -p 12009 
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 
debug1: Reading configuration data /etc/ssh/ssh_config 
debug1: Applying options for * 
debug2: ssh_connect: needpriv 0 
debug1: Connecting to bsul0959 [10.41.66.84] port 12009. 
debug1: connect to address 10.41.66.84 port 12009: Connection refused 
ssh: connect to host bsul0959 port 12009: Connection refused 

그것은 말한다 거부했다. 타임 아웃이나 그와 비슷한 것을 얻지 못하기 때문에 일종의 연결이 있습니다. 맞습니까? Graylog 서버는 연결을 허용하지 않습니다. 그래서 구성이 잘못 되었습니까? Graylog는 아무것도받지 못합니다.

은 사전에 감사합니다 :)

답변

0

열린 포트를 확인하기 위해 SSH를 사용하여 좀 이상해. ssh는 TCP를 사용하고 Graylog는 UDP 포트에서 수신 대기하므로이 문제를 다르게 진단해야합니다.