<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      LogStash輸入插件詳解

      概述

      官方文檔:https://www.elastic.co/guide/en/logstash/7.17/input-plugins.html

      輸入插件使 Logstash 能夠讀取特定的事件源。

      LogStash 提供了 50 + 種輸入插件,常見類型包括:

      • 文件類:file, s3
      • 網絡類:beats, tcp, udp, http, kafka
      • 數據庫類:jdbc, mongodb,redis
      • 系統類:syslog, eventlog, windows_eventlog
      • 特殊類:stdin, generator

      所有輸入插件都支持以下核心參數:

      • add_field:值類型是哈希,默認值是{},其主要作用是向事件添加字段
      • codec:值類型是編解碼器,默認值是plain,
      • enable_metric:值類型為布爾值,默認值是true,是否開啟metric指標
      • id:值類型為字符串,此設置沒有默認值。為插件配置添加一個唯一的ID。
      • tags:為事件添加標簽,值類型是數組
      • type:值類型為字符串,type向此輸入處理的所有事件添加一個字段。可以在 Kibana 中搜索它

      常用輸入插件-Stdin

      Stdin是從標準輸入讀取事件。默認情況下,每個事件都被視為一行。如果需要合并多行,則需要使用多行編解碼器。
      stdin插件主要用于測試和開發環境,不適合生產環境的高吞吐量場景。

      常用字段解釋

      • add_field:值類型是哈希,默認值是{},其主要作用是向事件添加字段
      • codec:值類型是編解碼器,默認值是line,
      • enable_metric:值類型為布爾值,默認值是true,是否開啟metric指標
      • id:值類型為字符串,此設置沒有默認值。為插件配置添加一個唯一的ID。
      • tags:為事件添加標簽,值類型是數組
      • type:值類型為字符串,type向此輸入處理的所有事件添加一個字段。可以在 Kibana 中搜索它

      實戰

      [root@ELK01 ~/logstash/config]# cat stdin.conf
      # 輸入
      input {
          stdin {
              type => "stdin"
              id => "my_stdin"
              tags => ["stdin","my_stdin"]
              add_field => {
                  "name" => "張三"
                  "age" => 18
              }
              codec => line
          }
      }
      
      # 輸出,以debug方式輸出
      output {
          stdout {
              codec => rubydebug
          }
      }
      

      啟動LogStash驗證

      [root@ELK01 ~/logstash/config]# logstash -f ./stdin.conf
      # 打印的日志信息省略
      1 #輸入1,然后回車
      {
                "age" => "18",                      #add_field添加的字段
                "host" => "ELK01",
                "name" => "張三",
                "type" => "stdin"                  # 指定的type類型
            "@version" => "1",
          "@timestamp" => 2025-06-15T05:34:25.042Z,
                "tags" => [                         #添加的tag
              [0] "stdin",
              [1] "my_stdin"
          ],
             "message" => "1",                     #輸入的字段
      
      }
      

      常用輸入插件-file

      參考文檔:https://www.elastic.co/guide/en/logstash/7.17/plugins-inputs-file.html

      在 Logstash 中,file輸入插件是最常用的輸入插件之一,主要用于從文件系統讀取數據,常見的使用場景包括收集日志文件、監控文件變更,file插件能夠讀取所有的文件

      常用字段解釋

      • path(必需)
        • 功能:用于指定要監控的文件路徑,可以使用絕對路徑或相對路徑。
        • 注意事項:
          • 若路徑指向的是目錄而非文件,該插件會遞歸讀取目錄下的所有文件。
          • 要保證 Logstash 進程擁有讀取這些文件的權限。
      path => ["/var/log/*.log", "/data/app/*.out"]  # 支持使用通配符匹配多個文件
      
      • start_position
        • 功能:確定首次讀取文件時的起始位置。
        • 可選值:
          • beginning:從文件開頭開始讀取,適用于歷史數據遷移的場景。
          • end(默認值):從文件末尾開始讀取,適合實時日志收集的情況。
      start_position => "beginning"
      
      • sincedb_path
        • 功能:指定 sincedb 文件的存儲位置,該文件用于記錄已讀取文件的偏移量。
        • 默認值:$HOME/.sincedb_<hash>
      sincedb_path => "/data/logstash/sincedb"  # 生產環境建議使用專用目錄
      
      • ignore_older
        • 功能:設置一個時間閾值,超過該閾值的文件將被忽略。
        • 單位:秒、分鐘、小時、天等,例如3600(3600 秒)、2h(2 小時)。
      ignore_older => "1d"  # 忽略超過1天未修改的文件
      
      • exclude
        • 功能:用于排除不需要監控的文件。
      exclude => ["*.gz", "*.bak"]  # 排除壓縮文件和備份文件
      
      • stat_interval
        • 功能:設置檢查文件更新的時間間隔。
        • 默認值:1(秒)
      stat_interval => 5  # 每5秒檢查一次文件更新
      
      • discover_interval
        • 功能:設置掃描目錄以發現新文件的時間間隔,在監控目錄時會用到。
        • 默認值:15(秒)
      discover_interval => 30  # 每30秒掃描一次目錄
      
      • file_completed_action與file_completed_log_path
        • 用于處理已完成讀取的文件
      file_completed_action => "log"  # 可選值: log, delete, archive
      file_completed_log_path => "/var/log/logstash/completed_files.log"
      
      • file_sort_by與file_sort_direction
        控制文件讀取順序
      file_sort_by => "last_modified"  # 可選值: path, last_modified
      file_sort_direction => "asc"     # 可選值: asc(升序), desc(降序)
      
      • delimiter
        • 指定行分隔符(適用于非標準換行符的文件)
      delimiter => "\r\n"  # Windows格式換行符
      
      • max_open_files
        • 限制最大打開文件數(防止系統資源耗盡)
      max_open_files => 1024  # 默認值為4095
      
      • sincedb_write_interval
        • 設置 sincedb 寫入間隔(提高性能)
      sincedb_write_interval => 15  # 每15秒寫入一次sincedb
      
      • sincedb_clean_after
        • 清理過期的 sincedb 記錄
      sincedb_clean_after => "7d"  # 清理7天未訪問的文件記錄,默認值為14天
      
      • mode
        選擇監控模式(默認是tail,即追加模式)
      mode => "read"  # 一次性讀取文件,讀完即關閉,默認值為tail
      

      實戰

      定義配置文件

      [root@ELK01 ~/logstash/config]# cat file.conf
      input {
          file {
              id => "my_app_log"
              codec => "plain"
              tags => ["file","myfile"]
              add_field => {
                  "name" => "zhangsan"
                  "age" => 18
              }
              type => "file"
              # 讀取日志的文件路徑
              path => "/tmp/apps*.log"
              # 讀取的開始位置
              # 該參數剩下的前提條件時"sincedb*"文件中沒有對新文件的記錄.
              start_position => beginning
              # sincedb文件
              sincedb_path => "/data/logstash/sincedb"
              ignore_older => "3d"
              # 讀取頻率,1秒
              stat_interval => 1
              max_open_files => 1024
              sincedb_write_interval => 10
              mode => tail
          }
      }
      output {
          stdout {
              codec => rubydebug
          }
      }
      

      啟動logstash

      [root@ELK01 ~/logstash/config]# logstash -f ./file.conf
      [2025-06-15T14:22:35,596][INFO ][logstash.javapipeline    ][main] Pipeline Java execution initialization time {"seconds"=>0.58}
      [2025-06-15T14:22:35,657][INFO ][logstash.javapipeline    ][main] Pipeline started {"pipeline.id"=>"main"}
      [2025-06-15T14:22:35,717][INFO ][filewatch.observingtail  ][main][my_app_log] START, creating Discoverer, Watch with file and sincedb collections
      [2025-06-15T14:22:35,734][INFO ][logstash.agent           ] Pipelines running {:count=>1, :running_pipelines=>[:main], :non_running_pipelines=>[]}
      

      寫入內容至/tmp/apps01.log

      [root@ELK01 /tmp]# echo hello logstash file >> apps.log
      

      查看控制臺

      {
            "@version" => "1",
                "host" => "ELK01",
                "path" => "/tmp/apps.log",
             "message" => "hello logstash file", # 我們寫入文件的內容
                "type" => "file",
                "name" => "zhangsan",
                "tags" => [
              [0] "file",
              [1] "myfile"
          ],
          "@timestamp" => 2025-06-15T06:24:17.191Z,
                 "age" => "18"
      }
      

      查看sincedb文件

      [root@ELK01 /tmp]# cat /data/logstash/sincedb
      2490408 0 64768 44 1749968657.193113 /tmp/apps.log
      
      # 2490408表示文件的inodb
      # 0 表示磁盤分區
      # 64768表示文件當前偏移量,單位字節
      # 44表示記錄文件元數據(如權限、所有者)最后修改的時間戳(秒級)。
      # /tmp/apps.log表示讀取的日志文件
      

      持續更新其它插件

      posted @ 2025-06-15 20:02  huangSir-devops  閱讀(112)  評論(0)    收藏  舉報
      作者:你的名字
      出處:你的博客鏈接
      本文版權歸作者和博客園共有,歡迎轉載,但必須給出原文鏈接,并保留此段聲明,否則保留追究法律責任的權利。
      主站蜘蛛池模板: 漂亮人妻被强中文字幕久久| 中文字幕 制服 亚洲 另类| av亚洲一区二区在线| 一本一本久久a久久精品综合| 欧美乱码精品一区二区三区| 亚洲精品国产综合久久一线| 国产熟女50岁一区二区| 国产综合色精品一区二区三区| 99久久99这里只有免费费精品 | 亚洲精品中文字幕码专区| 国产精品午夜福利91| 爆乳2把你榨干哦ova在线观看 | 性色在线视频精品| 天堂av色综合久久天堂| 影音先锋AV成人资源站在线播放| 男人扒女人添高潮视频| 久久精品一区二区三区av| 国产精品av中文字幕| 精品人妻伦九区久久aaa片| 日本亚洲欧洲无免费码在线| 国产毛片精品av一区二区| 真人在线射美女视频在线观看| 免费国产一区二区不卡| 亚洲av无码国产在丝袜线观看| 极品粉嫩小泬无遮挡20p| 一区二区三区无码免费看| 国产日产免费高清欧美一区| 深夜宅男福利免费在线观看 | 中文字幕av无码免费一区| 欧美牲交a欧美牲交aⅴ一| 女高中生强奷系列在线播放| 人妻少妇精品专区性色av| 国产成人夜色高潮福利app| 強壮公弄得我次次高潮A片| 十八岁污网站在线观看| 激情综合色综合久久综合 | 成 人 色 网 站免费观看| 新巴尔虎右旗| 免费看黄片一区二区三区| 人妻系列无码专区免费| 紫金县|