阅读932 返回首页    go 阿里云 go 技术社区[云栖]


Logstash接入Windows平台日志__logtail(Agent)_用户指南_日志服务-阿里云

Windows平台可以使用Logtail采集日志,功能与Linux统一,接入体验会更好。

Logstash安装

1. 安装包说明

日志服务提供了一个基于logstash-2.2.2版本且集成JRE1.8、日志服务写出插件、NSSM 2.24的安装包,部署步骤相较于附录的DIY安装变得简洁,如有复杂需求可以参考后者自行DIY。

2. 安装方法

下载安装包后解压缩到C盘。

确认logstash的启动程序路径为C:logstash-2.2.2-winbinlogstash.bat。

创建Logstash采集配置

1. 插件参数说明

  • logstash-input-file

通过该插件tail方式收集日志文件,细节了解请参考logstash-input-file

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

  • logstash-output-logservice

通过该插件可以input插件采集的日志写出到日志服务。

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

2. 创建采集配置

可以为每种日志新建一个配置文件,命名格式如xxx.conf,建议统一到C:logstash-2.2.2-winconf目录下方便管理。

新增配置文件到C:logstash-2.2.2-winconf目录后,重启Logstash生效。

注:配置文件格式必须以UTF-8无BOM格式编码,可以下载notepad++修改文件编码格式。

  • IIS日志

请参考IIS日志配置

  • csv日志

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

  • 自带时间日志

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

  • 通用日志

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

3. 验证配置语法

执行PowerShell或cmd.exe,进入logstash安装目录:

  1. PS C:logstash-2.2.2-winbin> .logstash.bat agent --configtest --config C:logstash-2.2.2-winconfiis_log.conf

4. 验证数据收集

修改收集配置文件,在output阶段临时添加一行rubydebug配置以输出采集结果到Console(配置中type字段请自行设置):

  1. output {
  2. if [type] == "***" {
  3. stdout { codec => rubydebug }
  4. logservice {
  5. ...
  6. }
  7. }
  8. }

执行PowerShell或cmd.exe,进入logstash安装目录启动进程:

  1. PS C:logstash-2.2.2-winbin> .logstash.bat agent -f C:logstash-2.2.2-winconf

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

配置Logstash为Windows Service

在PowerShell下启动logstash.bat,Logstash进程会在前台工作,一般用于配置测试和采集调试。

建议调试通过后把Logstash设置为Windows Service,可以保持后台运行以及开机自启动。

请在PowerShell下执行以下命令,更多NSSM使用方法请参考官方文档

添加服务

一般用于首次部署时执行,如已添加过服务,请略过。

  • 32位系统
  1. C:logstash-2.2.2-winnssm-2.24win32nssm.exe install logstash "C:logstash-2.2.2-winbinlogstash.bat" "agent -f C:logstash-2.2.2-winconf"
  • 64位系统
  1. C:logstash-2.2.2-winnssm-2.24win64nssm.exe install logstash "C:logstash-2.2.2-winbinlogstash.bat" "agent -f C:logstash-2.2.2-winconf"

启动服务

如Logstash conf目录后有配置文件更新,请先停止服务,再启动服务。

  • 32位系统
  1. C:logstash-2.2.2-winnssm-2.24win32nssm.exe start logstash
  • 64位系统
  1. C:logstash-2.2.2-winnssm-2.24win64nssm.exe start logstash

停止服务

  • 32位系统
  1. C:logstash-2.2.2-winnssm-2.24win32nssm.exe stop logstash
  • 64位系统
  1. C:logstash-2.2.2-winnssm-2.24win64nssm.exe stop logstash

修改服务

  • 32位系统
  1. C:logstash-2.2.2-winnssm-2.24win32nssm.exe edit logstash
  • 64位系统
  1. C:logstash-2.2.2-winnssm-2.24win64nssm.exe edit logstash

删除服务

  • 32位系统
  1. C:logstash-2.2.2-winnssm-2.24win32nssm.exe remove logstash
  • 64位系统
  1. C:logstash-2.2.2-winnssm-2.24win64nssm.exe remove logstash

Tips

Logstash错误处理

  • Console提示

如右提示请忽略,不影响功能使用:io/console not supported; tty will not be manipulated。

其它错误可以去Google或Logstash论坛查找帮助信息。

  • 日志服务查看到数据乱码

logstash默认支持UTF8格式文件编码,请确认输入文件编码是否正确。

进阶功能

Logstash提供了大量插件,可以满足个性化需求,例如:

grok:通过正则表达式结构解析日志内容成多个字段。

json_linesjson:提供结构化解析JSON类型日志功能。

date:提供日志内容中有关日期、时间字段相关的解析、转换功能。

multiline:可自定义更为复杂的多行日志类型。

kv:提供结构化解析Key-Value类型日志格式功能。

按组件DIY安装

1. 安装Java

  • 下载

请进入Java官网下载JDK双击安装。

  • 设置环境变量

打开高级系统设置,新增或修改环境变量。

系统变量名
PATH C:Program FilesJavajdk1.8.0_73bin
CLASSPATH C:Program FilesJavajdk1.8.0_73lib;C:Program FilesJavajdk1.8.0_73libtools.jar
JAVA_HOME C:Program FilesJavajdk1.8.0_73
  • 验证

执行PowerShell或cmd.exe验证:

  1. PS C:UsersAdministrator> java -version
  2. java version "1.8.0_73"
  3. Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
  4. Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)
  5. PS C:UsersAdministrator> javac -version
  6. javac 1.8.0_73

2. 安装Logstash

  • 下载

官网下载:logstash主页选择2.2获以上版本

  • 安装

解压logstash-2.2.2.zip到C:logstash-2.2.2目录。

确认logstash的启动程序路径是否正确,C:logstash-2.2.2binlogstash.bat。

3. 安装Logstash写日志服务插件

请根据机器所处网络环境决定在线或离线安装模式:

  • 在线安装

该插件托管于RubyGems,点击查看信息(可能需要翻墙)。

执行PowerShell或cmd.exe,进入logstash安装目录:

  1. PS C:logstash-2.2.2> .binplugin install logstash-output-logservice
  • 离线安装

官网下载:进入logstash-output-logservice页面,点击右下角“下载”按钮。

如采集日志机器无法访问公网,请拷贝下载的gem包到采集日志机器的C:logstash-2.2.2目录。执行PowerShell或cmd.exe,进入logstash安装目录:

  1. PS C:logstash-2.2.2> .binplugin install C:logstash-2.2.2logstash-output-logservice-0.2.0.gem
  • 验证
  1. PS C:logstash-2.2.2> .binplugin list

在本机已安装的插件列表中可以找到logstash-output-logservice。

4. 安装NSSM

官网下载:进入nssm官网下载。

下载安装包到本地后,解压缩文件到目录C:logstash-2.2.2nssm-2.24。

最后更新:2016-12-02 15:34:35

  上一篇:go Logtail自定义机器标识管理__logtail(Agent)_用户指南_日志服务-阿里云
  下一篇:go Logtail启动配置参数__logtail(Agent)_用户指南_日志服务-阿里云