Logstash官网最新版下载地址以及YUM源:https://www.elastic.co/cn/downloads/logstash

Logstash最常见的运行方式即命令行运行 ./bin/logstash -f logstash.conf 然后通过ctrl+c结束,这种方式的优点在于运行方便,但是缺点也很明显,不便于管理,同时如果遇到服务器重启,则维护成本会更高一些,如果在生产环境运行logstash建议还是使用服务的方式运行

1、修改config目录下的 startup.optins

JAVA_HOME=/usr/local/java/jdk1..0_171
LS_HOME=/usr/local/logstash-6.2.
LS_OPTS="--path.settings ${LS_SETTINGS_DIR} --path.config /usr/local/logstash-6.2.4/logstash.d"
#我们把logstash的配置文件*.conf都放在/usr/local/logstash-6.2./logstash.d目录下面
LS_USER=root
LS_GROUP=root

2、创建服务

以root身份执行logstash命令创建服务

# /usr/local/logstash-6.2./bin/system-install

执行完后,会生成一个环境变量文件 /etc/default/logstash

另一个生成的则是主要的服务文件 /etc/systemd/system/logstash.service :

[Unit]
Description=logstash [Service]
Type=simple
User=root
Group=root
# Load env vars from /etc/default/ and /etc/sysconfig/ if they exist.
# Prefixing the path with '-' makes it try to load, but if the file doesn't
# exist, it continues onward.
EnvironmentFile=-/etc/default/logstash
EnvironmentFile=-/etc/sysconfig/logstash
ExecStart=/usr/local/logstash-6.2./bin/logstash "--path.settings" "/usr/local/logstash-6.2.4/config" "--path.config" "/usr/local/logstash-6.2./logstash.d"
Restart=always
WorkingDirectory=/
Nice=
LimitNOFILE= [Install]
WantedBy=multi-user.target

# systemctl start logstash

# systemctl enable logstash

3、日志查看

默认情况下日志会保存在以下两个位置

  • /var/log/messages
  • /usr/local/logstash/logs

/logstash/config/logstash.yml:主要用于控制logstash运行时的状态
/logstash/config/startup.options:logstash 运行相关参数

配置参数说明:

logstash.yml
参数 用途 默认值
node.name 节点名称 主机名称
path.data /数据存储路径 LOGSTASH_HOME/data/
pipeline.workers 输出通道的工作workers数据量(提升输出效率) cpu核数
pipeline.output.workers 每个输出插件的工作wokers数量
pipeline.batch.size 每次input数量
path.config 过滤配置文件目录
config.reload.automatic 自动重新加载被修改配置 false or true
config.reload.interval 配置文件检查时间
path.logs 日志输出路径
http.host 绑定主机地址,用户指标收集 “127.0.0.1”
http.port 绑定端口 -
log.level 日志输出级别,如果config.debug开启,这里一定要是debug日志 info
log.format 日志格式 * plain*
path.plugins 自定义插件目录

startup.options参数:

JAVACMD=/usr/bin/java   本地jdk
LS_HOME=/opt/logstash   logstash所在目录
LS_SETTINGS_DIR="${LS_HOME}/config"           默认logstash配置文件目录
LS_OPTS="–path.settings ${LS_SETTINGS_DIR}"  logstash启动命令参数 指定配置文件目录
LS_JAVA_OPTS=""  指定jdk目录
LS_PIDFILE=/var/run/logstash.pid logstash.pid所在目录
LS_USER=logstash    logstash启动用户
LS_GROUP=logstash logstash启动组
LS_GC_LOG_FILE=/var/log/logstash/gc.log logstash jvm gc日志路径
LS_OPEN_FILES=65534 logstash最多打开监控文件数量


示例logstash配置文件:

input {
file {
path => "/usr/local/nginx/logs/ad-access.log"
type => "nginx--ad"
start_position => "beginning"
}
beats {
port => ""
}
} filter {
grok {
match => { "message" => "%{MYNGINX}" }
}
mutate {
convert => [ "elapsed", "float" ]
convert => [ "serverelapsed", "float" ]
}
} output {
if [type] == "nginx--ad" {
elasticsearch {
hosts=> ["172.17.213.61:9200"]
index=> "nginx-ad.%{+YYYY-MM}"
}
}
else {
elasticsearch {
hosts => ["172.17.213.60:9200", "172.17.213.61:9200"]
index => "adsdk.%{+YYYY-MM-DD}"
manage_template => false
template_overwrite => true
template_name => "adsdk-template"
template => "/usr/local/logstash-6.2.4/adsdk.template"
document_type => "adsdk"
}
}
}

Logstash配置以服务方式运行的更多相关文章

  1. 以Windows服务方式运行.NET Core程序

    在之前一篇博客<以Windows服务方式运行ASP.NET Core程序>中我讲述了如何把ASP.NET Core程序作为Windows服务运行的方法,而今,我们又遇到了新的问题,那就是: ...

  2. [转帖]以Windows服务方式运行ASP.NET Core程序

    以Windows服务方式运行ASP.NET Core程序 原作者blog: https://www.cnblogs.com/guogangj/p/9198031.htmlaspnet的blog 需要持 ...

  3. [转帖]以Windows服务方式运行.NET Core程序

    以Windows服务方式运行.NET Core程序 原作者blog:https://www.cnblogs.com/guogangj/p/10093102.html 里面使用了NSSM 工具 但是自己 ...

  4. 连表查询都用Left Join吧 以Windows服务方式运行.NET Core程序 HTTP和HTTPS的区别 ASP.NET SignalR介绍 asp.net—WebApi跨域 asp.net—自定义轻量级ORM C#之23中设计模式

    连表查询都用Left Join吧   最近看同事的代码,SQL连表查询的时候很多时候用的是Inner Join,而我觉得对我们的业务而言,99.9%都应该使用Left Join(还有0.1%我不知道在 ...

  5. centos6.x下让redis以服务方式运行

    1.从官网下载redis-2.8.9.tar.gz之后,将redis解压在/usr/local下,目录是redis-2.8.9,然后按照官网给出的办法安装redis即可. 2.安装完在redis-2. ...

  6. 【数据库开发】在Windows上以服务方式运行 MSOPenTech/Redis

    在Windows上以服务方式运行 MSOPenTech/Redis ServiceStack.Redis 使用教程里提到Redis最好还是部署到Linux下去,Windows只是用来做开发环境,现在这 ...

  7. 使用apache daemon让java程序在unix系统上以服务方式运行

    通过使用apache_commons_daemon,可以让Java程序在unix系统上以服务器的方式运行. 当然,通过wrapper也是可以达到这样的目的,wrapper还可以指定java应用中用到的 ...

  8. 如何让msvsmon.exe 以服务方式运行

    通常我们在VS上调试程序用的都是msvsmon.exe, 使用管理员权限运行再选项设置任何人可以调试就可以了,而这个在绝大多数情况下都没有问题.而我想说的就是特殊的情况,跟msvsmon的运行权限相关 ...

  9. (转)在Windows上以服务方式运行 MSOPenTech/Redis

    ServiceStack.Redis 使用教程里提到Redis最好还是部署到Linux下去,Windows只是用来做开发环境,现在这个命题发生改变了,在Windows上也可以部署生产环境的Redis, ...

随机推荐

  1. Apache Zookeerper搭建

    08-Apache Zookeerper--概述和集群相关概念(主从.主备)    01) zookeeper的介绍        01) 分布式协调服务的开源框架,主要解决分布式集群中应用系统间的一 ...

  2. document.forms使用

    定义:document.forms返回form表单的集合,包含了当前DOM结构中所有的form表单. 语法: . 获取当前DOM结构中的第一个form表单. document.forms[] . 获取 ...

  3. golang代理使用proxy.cn

    golang代理使用proxy.cn,参考:https://github.com/goproxy/goproxy.cn/blob/master/README.zh-CN.md 使用方法: $ expo ...

  4. golang测试

    简述 Go语言中自带有一个轻量级的测试框架testing和自带的go test命令来实现单元测试和性能测试. go test [-c] [-i] [build flags] [packages] [f ...

  5. 牛客NOIP暑期七天营-普及组2D

    链接:https://ac.nowcoder.com/acm/contest/926/D来源:牛客网 在一维坐标系中,给定 n条有颜色的线段,第 i条线段的左右端点分别为 li​和 ri​,此外它的颜 ...

  6. python预课01 turtle学习

    Turtle命令: import turtle # 导入模块 t = turtle.Pen() # 生成画笔 t.speed() #设置速度0-10:0最快 t.forward() # 前进 t.ba ...

  7. 导入Excel——解析Excel

    读取Excel 思路:先读取整个Excel,即工作簿,再依次读取其中的每个工作表Sheet,最后读取工作表内的表格. 一.读取工作簿利用流读取指定目录中的工作簿,并写入内存. /** * Constr ...

  8. VisualVM的插件中心已经迁移至GitHub

    VisualVM是一款免费的集成了多个JDK命令行工具的可视化性能分析工具,而且目前已经被JDK包含了,取名为:jvisualvm .如果你是一名Javaer,强烈建议你能够使用它,因为它不仅能生成和 ...

  9. 硬币游戏1——打表&&记忆化搜索

    题目 Alice和Bo在玩这样一个游戏,给定 $k$ 个数字 $a_1, a_2,..,a_k$.一开始有 $x$ 枚硬币,Alice和Bob轮流取硬币.每次所取的硬币的枚数一定要在 $k$ 个数当中 ...

  10. speedscope + node inspect 分析node应用调用

    生成一个简单的express 项目 使用脚手架工具 npm install -g express-generator@4 express . 启动使用inspect命令 node --inspect ...