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. nginx 405错误

    nginx配置文件加上location / { try_files $uri $uri/ /index.php?$query_string; }

  2. Mac 提示错误”xcrun: error“

    错误现象: Mac 安装python模块时出现异常错误 xcrun: error: invalid active developer path (/Library/Developer/CommandL ...

  3. unittest管理用例生成测试报告

    #登录方法的封装 from appium import webdriver from time import sleep from python_selenium.Slide import swipe ...

  4. Flask+SQLAlchemy+graphene+docker示例

    搭建一个利用docker启动服务的Flask的小demo 定义数据库 # -*- coding: utf-8 -*- from sqlalchemy import * from sqlalchemy. ...

  5. centos 修改默认启动内核,及删除无用内核

    #使用cat /boot/grub2/grub.cfg |grep menuentry 查看系统可用内核 [root@bigapp-slave27 ~]# cat /boot/grub2/grub.c ...

  6. eclipse集成lombok插件

    原文:https://my.oschina.net/u/3771868/blog/1837243 lombok官网:https://projectlombok.org/jar包下载路径:https:/ ...

  7. Kubernetes架构及相关服务详解

    11.1.了解架构 K8s分为两部分: 1.Master节点 2.node节点 Master节点组件: 1.etcd分布式持久化存储 2.api服务器 3.scheduler 4.controller ...

  8. pm2日志管理插件

    pm2的日志模块默认是每一个服务进程都分配两个默认的日志文件 普通日志 错误日志 这两个日志文件存放于/root/.pm2/logs中,如果pm2管理5个服务,那么该文件夹下总共有10个日志文件,并且 ...

  9. sleep、yield、wait、join的区别(阿里)

    只有runnable到running时才会占用cpu时间片,其他都会出让cpu时间片.线程的资源有不少,但应该包含CPU资源和锁资源这两类.sleep(long mills):让出CPU资源,但是不会 ...

  10. vue.js双向绑定之--select获取text

    在大多数情况下select下拉菜单都是value和text设置不同的值的,value一般来说是与后台交互的值,而text是前端用来显示的文本: 但是,vue.js对到表单的双向绑定时如果option设 ...