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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Nxlog 配置总结

發布時間:2023/12/31 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nxlog 配置总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Nxlog

nxlog基本架構

nxlog是事件驅動的多線程App。nxlog內核只負責配置文件解析/文件和Socket監控/內部事件管理,任何module可以dispatch事件到內核。內核會有選擇性分發到對應處理module。

nxlog Config文件基本結構

配置引入

用include引入其他地方的配置,對實際功能無影響。與Apache配置類似,不研究

宏定義

用這個定義一些宏,對實際功能無影響。與C的宏類似,不研究

全局指令

內置的一些指令

Module

一個ConfigBlock如下

<Input instancename>Module im_module... </Input>

頂級ConfigBlock可以分為四種,Input, Processor, Output and Extension tags.ConfigBlock必須由上面四個類型+命名。命名規則 [a-zA-Z0-9_-]。有一些通用Block可以在多種類型的模塊中使用。以下列舉一些。

指令模塊范圍作用
FlowControlInput, Processor順序控制,但有可能照成消息丟失
ScheduleAll通過When,Every,First,Exec四個子指令實現篩選,頻率,開始時間
Processors作廢了
InputTypeInputLineBased,Dgram,Binary
OutputTypeOutputLineBased,Dgram,Binary

Nxlog 語言

類似perl語法,出錯可能丟消息。復雜的處理程序可以通過自己編寫一個module或者xm_perl模塊來實現。 語言是強類型的,不支持Dict,正則只支持=~ 和!~。明確定義以下 "boolean", "integer", "string", "datetime", "ip4addr", "ip6addr", "regexp", "binary".這幾種類型。自己有類型推導。同時函數支持多態。

Bool操作

  • if 1 + 1 == (1 + 1) log_info("2");
  • if $Message =~ /^Test (\S+)/ log_info("captured: " + $1);
  • $EventTime = 2000-01-02 03:04:05;

一元操作

  • if not $success log_error("failure");
  • if - -1 != 1 log_error("this should never be printed");
  • if defined(2) log_info("2");
  • if defined undef log_info("never printed");

String =~, !~.

  • 返回True如果匹配上,if $Message =~ /^Test message/ log_info("matched");
  • Captured substrings are accessible through a numeric reference such as $1. The full subject string is placed into $0. 不知道支持不支持$#
  • replace用g ,例子if $SourceName =~ s/\s/_/g log_info("removed all whitespace in SourceName");
  • 換行匹配s,例子if $Message =~ /failure/s log_info("failure string present in the message");
  • 大小寫忽略i
  • if $Message !~ /^Test message/ log_info("didn't match");

二元操作

  • ==
    • undef == undef = TRUE
    • string == string = boolean
    • integer == integer = boolean
    • boolean == boolean = boolean
    • datetime == datetime = boolean
    • ip4addr == ip4addr = boolean
    • ip4addr == string = boolean
    • string == ip4addr = boolean
  • !=
    • undef != undef = FALSE
    • string != string = boolean
    • integer != integer = boolean
    • boolean != boolean = boolean
    • datetime != datetime = boolean
    • ip4addr != ip4addr = boolean
    • ip4addr != string = boolean
    • string != ip4addr = boolean
  • <=
    • integer <= integer = boolean
    • datetime <= datetime = boolean
  • +
    • integer + integer = integer
    • string + undef = string
    • undef + string = string
    • undef + undef = undef
    • string + string = string Concatenate two strings.
    • datetime + integer = datetime Add the number of seconds in the right value to the datetime stored in the left value.
    • integer + datetime = datetime Add the number of seconds in the left value to the datetime stored in the right value.
  • -
    • integer - integer = integer
    • datetime - datetime = integerSubtract two datetime types. The result is the difference between to two expressed in microseconds.
    • datetime - integer = datetimeSubtract the number of seconds from the datetime stored in the left value.
  • IN NOT IN
    • if $EventID IN (1000, 1001, 1004, 4001) log_info("EventID found");

Function(Return值的函數)

  • string lc(string arg); Convert a string to lower case.
  • string uc(string arg); Convert a string to upper case.
  • string substr(string src, integer from, integer to);
  • string replace(string subject, string src, string dst, integer count); 替換count次,如果count無則全部替換
  • datetime now();
  • string type(unknown arg);Returns the type of a variable. Can be "boolean", "integer", "string", "datetime", "ip4addr", "ip6addr", "regexp", "binary". For values with the unknown type, it returns undef.
  • integer year(datetime datetime); Return the year part from the datetime value.還有mouth day hour minute second
  • string string(unknown arg); 強制類型轉換
  • integer integer(unknown arg); 強制類型轉換,如果參數是時間類型的,轉成時間戳
    • datetime parsedate(string arg); 強制類型轉換,如果轉化錯誤,return當前時間
    • string hostname();
    • ip4addr host_ip();
  • dropped(); Return TRUE if the currently processed event has been already dropped.

Procedures(不Return的函數)

  • delete(unknown arg);Delete the field from the event
  • rename_field(string old, string new); 重命名field

Nxlog Module

主要分為四種模塊Extension, Input, Processor, Output

Extension

  • CSV模塊
  • XML模塊
  • JSON模塊 Nxlog不支持像二維數組/MAP這種數據類型,所以accessing nested JSON fields is not possible. 另外xm_json 是可以自動識別datetime values的。不用顯式的調用parseDate()
  • 多行解析xm_multiline
  • Perl腳本模塊Perl (xm_perl)
  • 外部腳本模塊xm_exec。實驗了一下如何用python腳本處理log。可以做到。但有一些性能上的考慮

Input

Nxlog中在Input中有4個內置值$raw_event, $EventReceivedTime, $SourceModuleName, $SourceModuleType

  • DBI 從數據庫里面讀數據
  • File 從文件中讀日志。可以通過設置SavePos TRUE ReadFromLast FALSE 重啟nxlog重復從頭讀取的問題,但是有可能會出現異常,因為SavePos和nxlog內置cache相關,改變cache有可能導致SavePos失敗
  • MS EventLog for Windows 2008/Vista and later im_msvistalog
  • TCPim_tcp
  • UDPim_udp
  • Unix Domain Socket (im_uds)

Processor

  • Filter(pm_filter)
  • Message deduplicator(pm_norepeat)
  • Message Format converter (pm_transformer)

Output modules

我們只有一種方式,就是寫tcpout寫到logstash里面

  • UDS(om_uds)

總結

以上是生活随笔為你收集整理的Nxlog 配置总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 四虎永久在线精品 | 污黄视频在线观看 | 四虎在线免费 | 久久大尺度 | jizzjizz美国 | 日本成人激情视频 | 欧美一区二区三区公司 | 人妻洗澡被强公日日澡电影 | 精品国产乱码久久久久久闺蜜 | 午夜寂寞剧场 | 欧美日韩中文 | 舌奴调教日记 | 一区二区在线免费视频 | 熟女俱乐部一区二区视频在线 | 国产真人做爰毛片视频直播 | 日本黄网在线观看 | 国产午夜精品一区二区理论影院 | 成人在线观看免费网站 | 国产精品热 | 欧美人体一区二区 | 成人片黄网站色大片免费毛片 | 久久久久久久影视 | av青青草原 | 反差在线观看免费版全集完整版 | 中文字幕永久在线视频 | 四虎av网址| 日日干天天干 | 日本免费成人 | 成人黄色免费网 | 少妇色综合| 五月综合激情网 | 欧美美女爱爱视频 | 巨乳美女动漫 | 日本免费精品视频 | 夜间福利在线 | 超污巨黄的小短文 | 天堂√8在线中文 | sese久久 | 日韩一区二区不卡视频 | 尤物视频在线 | 欧美做受高潮动漫 | 神秘马戏团在线观看免费高清中文 | 亚洲人免费视频 | 亚洲av无码一区东京热久久 | 欧美另类z0z变态 | 天堂在线中文字幕 | 色999在线| 男人都懂的网站 | 在线播放第一页 | 福利小视频在线播放 | 亚洲熟妇色自偷自拍另类 | 色呦呦在线 | 鲁丝一区二区三区 | 成人激情视频网站 | 手机在线一区 | 精品国产乱码久久久久 | 电家庭影院午夜 | 亚洲天堂麻豆 | 欧美精品一区二区三区三州 | 国产尻逼视频 | 亚洲精品www久久久久久广东 | 一区二区三区日本视频 | 国产精品国产精品国产专区蜜臀ah | 日本三级吃奶头添泬无码苍井空 | 日本高清不卡在线观看 | 男人日女人免费视频 | 欧美日本国产在线 | 一区二区在线免费观看视频 | 国产欧美日韩高清 | 欧美一区二区免费电影 | 8x8ⅹ国产精品一区二区 | 永久免费观看av | 亚洲高清色 | 国产裸体永久免费视频网站 | 糖心logo在线观看 | 男女日批| 人人看人人干 | 久久在线视频免费观看 | 日本三级视频在线 | 青春草国产视频 | 美女网站黄频 | 成人毛片一区二区三区 | 欧美色香蕉 | 欧美日韩激情一区二区 | 污免费视频 | 国产成人手机在线 | 欧洲美一区二区三区亚洲 | 日韩欧美国产激情 | 一区二区三区四区免费视频 | 国产乱国产乱老熟 | 污污在线观看视频 | 中文字幕高清一区 | 在线视频免费观看一区 | 欧美三级图片 | 日韩免费高清视频 | 欧美国产日韩一区二区 | 秋霞午夜视频 | 婷综合| 黄色免费视频 |