日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

php+log+iis,利用nxlog以syslog方式发送iis日志

發(fā)布時(shí)間:2023/12/31 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php+log+iis,利用nxlog以syslog方式发送iis日志 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、nxlog簡介

nxlog是個(gè)跨平臺日志傳輸插件,支持linux、windows平臺,支持window及l(fā)inux內(nèi)置的大部分系統(tǒng)日志及常見的web日志,支持tcp、udp、http(s)等協(xié)議傳輸。

2、配置目的

通過nxlog將iis日志按syslog以udp的方式發(fā)送到linux服務(wù)器中作為linux服務(wù)器的syslog。

特殊需求:is日志中日期和時(shí)間是兩個(gè)字段,需要合并成一個(gè)字段。

3、系統(tǒng)及軟件環(huán)境

OS:window server2008 r2 Enterprise

IIS:7.5

Nxlog:2.9.1347

4、iis日志格式

5、nxlog配置步驟

1)安裝nxlog

默認(rèn)是安裝在C:\Program Files (x86)\nxlog路徑下。

2)修改nxlog.conf配置信息

位置:C:\Program Files (x86)\nxlog\conf\nxlog.conf

修改方式:請看下面【6、nxlog配置示例】

3)重啟服務(wù)【nxlog】

4)驗(yàn)證

驗(yàn)證去data目錄下看nxlog.log是否是否有異常,正常應(yīng)該無異常,僅含啟動(dòng)成功的日志信息

通過資源監(jiān)視器,看nxlog發(fā)送的網(wǎng)絡(luò)流量是否存在,正常應(yīng)該有

通過日志平臺來驗(yàn)證日志是否發(fā)送成功。

?6、nxlog配置示例?

1)當(dāng)日志文件都放在一個(gè)文件夾,nxlog.conf配置如下

define?ROOT?C:\Program?Files?(x86)\nxlog

define?CERTDIR?%ROOT%\cert

Moduledir?%ROOT%\modules

CacheDir?%ROOT%\data

Pidfile?%ROOT%\data\nxlog.pid

SpoolDir?%ROOT%\data

LogFile?%ROOT%\data\nxlog.log

Module?xm_csv

Fields?$datetime,?$s-ip,?$cs-method,?$cs-uri-stem,?$cs-uri-query,?$c-ip,?$csUser-Agent,?$cs-Referer,?$cs-host,?$sc-status,?$sc-substatus,?$sc-win32-status,?$time-taken

FieldTypes?string,?string,?string,?string,?string,?string,?string,?string,?string,?string,?string,?string,?string

Delimiter?'?'

QuoteChar?'"'

EscapeControl?TRUE

UndefValue?-

Module?xm_syslog

Module???im_file

#iis日志目錄,文件名支持通配符,文件夾不支持

File????"D:\iislog\W3SVC1\u_ex*.log"

SavePos??TRUE

#合并iis日志中的時(shí)間與日志字段為一個(gè)字段

Exec?if?$raw_event?=~?/^#/?drop();?\

else?\

{?\

$raw_event?=?replace($raw_event,?'?',?'@',1);????????\

w3c->parse_csv();?\

$raw_event?=?replace($raw_event,?'?',?"\t");?????????\

$raw_event?=?replace($raw_event,?'@',?'?',1);????????\

}

Module?om_udp

Host?192.168.108.2

Port?514

Exec?to_syslog_bsd();

Path?in?=>?out

2)日志文件都放在多個(gè)文件夾【支持跨服務(wù)器】,nxlog.conf配置如下

define?ROOT?C:\Program?Files?(x86)\nxlog

define?CERTDIR?%ROOT%\cert

Moduledir?%ROOT%\modules

CacheDir?%ROOT%\data

Pidfile?%ROOT%\data\nxlog.pid

SpoolDir?%ROOT%\data

LogFile?%ROOT%\data\nxlog.log

Module?xm_csv

Fields?$datetime,?$s-ip,?$cs-method,?$cs-uri-stem,?$cs-uri-query,?$c-ip,?$csUser-Agent,?$cs-Referer,?$cs-host,?$sc-status,?$sc-substatus,?$sc-win32-status,?$time-taken

FieldTypes?string,?string,?string,?string,?string,?string,?string,?string,?string,?string,?string,?string,?string

Delimiter?'?'

QuoteChar?'"'

EscapeControl?TRUE

UndefValue?-

Module?xm_syslog

Module???im_file

#iis日志目錄,文件名支持通配符,文件夾不支持

File????'D:\iislog\W3SVC2\u_ex*.log'

SavePos??TRUE

#合并iis日志中的時(shí)間與日志字段為一個(gè)字段

Exec?if?$raw_event?=~?/^#/?drop();?\

else?\

{?\

$raw_event?=?replace($raw_event,?'?',?'@',1);????????\

w3c->parse_csv();?\

$raw_event?=?replace($raw_event,?'?',?"\t");?????????\

$raw_event?=?replace($raw_event,?'@',?'?',1);????????\

}

Module???im_file

#iis日志目錄,文件名支持通配符,文件夾不支持

File????'\\192.168.108.3\d$\iislog\W3SVC2\u_ex*.log'

SavePos??TRUE

#合并iis日志中的時(shí)間與日志字段為一個(gè)字段

Exec?if?$raw_event?=~?/^#/?drop();?\

else?\

{?\

$raw_event?=?replace($raw_event,?'?',?'@',1);????????\

w3c->parse_csv();?\

$raw_event?=?replace($raw_event,?'?',?"\t");?????????\

$raw_event?=?replace($raw_event,?'@',?'?',1);????????\

}

Module?om_udp

Host?192.168.108.2

Port?514

Exec?to_syslog_bsd();

Path?in_machine_a,in_machine_b?=>?out

3)支持多個(gè)數(shù)據(jù)源和多個(gè)輸出

配置多個(gè)in及out,可以共用一個(gè)path配置輸出。

7、nxlog配置過程中出現(xiàn)過的問題

1)nxlog2.8版本發(fā)送異常的問題

問題現(xiàn)象

2015-03-11 21:27:31 ERROR if-else failed at line 50, character 246 in C:\Program Files (x86)\nxlog\conf\nxlog.conf. statement execution has been aborted; procedure 'parse_csv' failed at line 50, character 103 in C:\Program Files (x86)\nxlog\conf\nxlog.conf. statement execution has been aborted; Not enough fields in CSV input, expected 14, got 0 in input ''

導(dǎo)致整個(gè)進(jìn)程無法繼續(xù)輸出日志

解決方法

替換使用2.9.1347版本的nxlog

參考

8、性能分析

從使用來看,單臺服務(wù)器一天內(nèi)大約會(huì)發(fā)送4到6G大小的日志到遠(yuǎn)程linux中,nxlog進(jìn)程占用的資源如下:cpu占用率一般在0%到3%【40核】之間;占用帶寬300k-600k/s之間;內(nèi)存一般小于10M。

總體而言對性能影響較小,注意對帶寬的影響。

總結(jié)

以上是生活随笔為你收集整理的php+log+iis,利用nxlog以syslog方式发送iis日志的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。