开发者社区> 问答> 正文

如何创建 Logstash 的采集配置?



相关插件



[backcolor=transparent]logstash-input-file


通过该插件tail方式收集日志文件,详细信息请参考 logstash-input-file


[backcolor=transparent]注意:path 填写文件路径时请使用 UNIX 模式的分隔符,如:C:/test/multiline/*.log,否则无法支持模糊匹配。


[backcolor=transparent]logstash-output-logservice


通过该插件可以 input 插件采集的日志写出到日志服务。
参数说明
endpointhttp://cn-shenzhen.log.aliyuncs.com, 参考:日志服务入口
project日志服务项目名称
logstore日志库名称
topic日志主题名称,默认设置空即可
source日志来源,如为空则自动取本机 IP,否则以设置值为准
access_key_id阿里云云账号秘钥 ID
access_key_secret阿里云云账号秘钥 secret
max_send_retry数据包发送日志服务发生异常时最大重试次数,重试不成功的数据包丢弃,重试间隔为 200 毫秒


配置步骤



1 创建采集配置


新增配置文件到 C:\logstash-2.2.2-win\conf\ 目录后,重启Logstash生效。
可以为每种日志新建一个配置文件,格式为 *.conf。建议统一保存于 C:\logstash-2.2.2-win\conf\ 目录下,以方便管理。

[backcolor=transparent]注意:配置文件格式必须以 UTF-8 无 BOM 格式编码,可以通过 notepad++ 修改文件编码格式。

  • IIS 日志
    请参考 IIS 日志配置

  • CSV 日志
    使用采集日志的系统时间作为上传日志时间,请参考 CSV 日志配置

  • 自带时间日志
    以CSV日志格式为例,以日志内容中的时间作为上传日志时间,请参考 CSV 日志配置

  • 通用日志
    默认使用采集日志的系统时间作为上传的日志时间,日志不解析字段,支持单行、多行日志格式。请参考 通用日志配置


2 验证配置语法


执行 PowerShell 或 cmd.exe,进入Logstash安装目录:
  1. [backcolor=transparent]PS C[backcolor=transparent]:[backcolor=transparent]\logstash[backcolor=transparent]-[backcolor=transparent]2.2[backcolor=transparent].[backcolor=transparent]2[backcolor=transparent]-[backcolor=transparent]win\b[backcolor=transparent]in[backcolor=transparent]>[backcolor=transparent] [backcolor=transparent].[backcolor=transparent]\logstash[backcolor=transparent].[backcolor=transparent]bat agent [backcolor=transparent]--[backcolor=transparent]configtest [backcolor=transparent]--[backcolor=transparent]config C[backcolor=transparent]:[backcolor=transparent]\logstash[backcolor=transparent]-[backcolor=transparent]2.2[backcolor=transparent].[backcolor=transparent]2[backcolor=transparent]-[backcolor=transparent]win\conf\iis_log[backcolor=transparent].[backcolor=transparent]conf

修改收集配置文件,在 output 阶段临时添加一行 rubydebug 配置以输出采集结果到 Console。配置中 type 字段请自行设置。
  1. [backcolor=transparent]output [backcolor=transparent]{
  2. [backcolor=transparent]if[backcolor=transparent] [backcolor=transparent][[backcolor=transparent]type[backcolor=transparent]][backcolor=transparent] [backcolor=transparent]==[backcolor=transparent] [backcolor=transparent]"***"[backcolor=transparent] [backcolor=transparent]{
  3. [backcolor=transparent]  stdout [backcolor=transparent]{[backcolor=transparent] codec [backcolor=transparent]=>[backcolor=transparent] rubydebug [backcolor=transparent]}
  4. [backcolor=transparent]  logservice [backcolor=transparent]{
  5. [backcolor=transparent]    [backcolor=transparent]...
  6. [backcolor=transparent]    [backcolor=transparent]}
  7. [backcolor=transparent]  [backcolor=transparent]}
  8. [backcolor=transparent]}

执行 PowerShell 或 cmd.exe,进入Logstash安装目录启动进程:
  1. [backcolor=transparent]PS C[backcolor=transparent]:[backcolor=transparent]\logstash[backcolor=transparent]-[backcolor=transparent]2.2[backcolor=transparent].[backcolor=transparent]2[backcolor=transparent]-[backcolor=transparent]win\b[backcolor=transparent]in[backcolor=transparent]>[backcolor=transparent] [backcolor=transparent].[backcolor=transparent]\logstash[backcolor=transparent].[backcolor=transparent]bat agent [backcolor=transparent]-[backcolor=transparent]f C[backcolor=transparent]:[backcolor=transparent]\logstash[backcolor=transparent]-[backcolor=transparent]2.2[backcolor=transparent].[backcolor=transparent]2[backcolor=transparent]-[backcolor=transparent]win\conf

验证完成后,请结束 logstash.bat 进程并删除 rubydebug 临时配置项。

后续操作


在 PowerShell 下启动 logstash.bat,logstash 进程会在前台工作,一般用于配置测试和采集调试。建议调试通过后把Logstash设置为 Windows Service,可以保持后台运行以及开机自启动。有关如何将Logstash设置为 Windows Service,参见 配置 Logstash 为 Windows Service

展开
收起
轩墨 2017-10-20 15:59:26 2457 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
Kubernetes下日志实时采集、存储与计算实践 立即下载
数据采集:日志数据上传 立即下载
Elasticsearch全观测技术解析与应用(构建日志、指标、APM统一观测平台) 立即下载