logstash 自动重新加载配置
输入内容中最好不要出现 "type":"...",key为type的json。它会覆盖配置文件中的type。导致type不相等,不执行output es操作。
比如json:{"type":"123"}
logstash配置文件为:
input {
  kafka {
    bootstrap_servers => "111.111.1.1:9092"
    topics => ["test"]
    group_id => "test_group_main"
    client_id => "test_kafka_client_25"
    type => "test_logstash_25"
  }
}
filter {
  if [type] == "test_logstash_25" {
     json {
      source => "message"
      remove_field => ["message"]
    }
  }
}
output {
  if [type] == "test_logstash_25" { #这里的type值变成了123,取自json。导致不存es库。
    elasticsearch {
      hosts=> ["111.111.11.111:9200"]
      index=> "my_test-%{+YYYY.MM.dd}"
      codec => json
    }
  }
}
自动重新加载配置
为了可以自动检测配置文件的变动和自动重新加载配置文件,需要在启动的时候使用以下命令:
./bin/lagstash -f configfile.conf --config.reload.automatic
1
默认,检测配置文件的间隔时间是3秒,可以通过以下命令改变
--config.reload.interval <second>
1
如果已经运行了没有提供自动重启的logstash,可以发送一个挂起命令给logstash重新加载配置文件:
kill -1 <pid>
1
配置文件自动重载工作原理
检测到配置文件变化
通过停止所有输入停止当前pipline
用新的配置创建一个新的管道
检查配置文件语法是否正确
检查所有的输入和输出是否可以初始化
检查成功使用新的pipeline替换当前的pipeline,
检查失败,使用旧的继续工作.
在重载过程中,jvm没有重启.
注意事项
stdin输入插件不支持自动重启.
syslog作为输入源,当重载配置文件时,会崩溃.请看: https://github.com/logstash-plugins/logstash-input-syslog/issues/40
--------------------- 
作者:落叶下的光 
来源:CSDN 
原文:https://blog.csdn.net/qq_32292967/article/details/78622647 
版权声明:本文为博主原创文章,转载请附上博文链接!
启动时加载目录下所有配置文件:配置文件必须要以 config 为后缀。 yml在指定单个可以执行,批量就不认了!!!
bin/logstash -f ./config/ (bin/logstash -f ./config/*还是启动第一个)
需要用pipeline.xml
验证正确性:
bin/logstash -f first-pipeline.conf --config.test_and_exit
bin/logstash -f first-pipeline.conf --config.reload.automatic 自动加载 ./bin/logstash --path.settings ./bak.config/ 自己设定config目录
logstash 自动重新加载配置的更多相关文章
- PHP设计模式:类自动载入、PSR-0规范、链式操作、11种面向对象设计模式实现和使用、OOP的基本原则和自动加载配置
		
一.类自动载入 SPL函数 (standard php librarys) 类自动载入,尽管 __autoload() 函数也能自动加载类和接口,但更建议使用 spl_autoload_registe ...
 - PHP自动加载配置ArrayAccess类
		
ArrayAccess是PHP的类,可以把对象当成数组来使用访问. Config.php 配置类 <?php namespace IMooc; class Config implements ...
 - Intellij如何设置编译后自动重新加载class文件?
		
前段时间突然发现Intellij不能自动重新加载类了,每次编译后都要重新启动项目,才能显示更新效果,后来网上查询Intellij下如何配置热部署,都说是要配置构件,然后在web容器的编辑页面选择upd ...
 - Supervisor重新加载配置
		
Supervisor重新加载配置启动新的进程 liaojie 发布于 1年前,共有 0 条评论 一.添加好配置文件后 二.更新新的配置到supervisord supervisorctl update ...
 - SpringMVC加载配置Properties文件的几种方式
		
最近开发的项目使用了SpringMVC的框架,用下来感觉SpringMVC的代码实现的非常优雅,功能也非常强大, 网上介绍Controller参数绑定.URL映射的文章都很多了,写这篇博客主要总结一下 ...
 - 在线配置热加载配置 go-kratos.dev 监听key
		
paladin https://v1.go-kratos.dev/#/config-paladin example Service(在线配置热加载配置) # service.go type Servi ...
 - ExtJs基础知识总结:自定义弹窗和ComboBox自动联想加载(四)
		
概述 Extjs弹窗可以分为消息弹窗.对话框,这些弹窗的方式ExtJs自带的Ext.Msg.alert就已经可以满足简单消息提示,但是相对复杂的提示,比如如何将Ext.grid.Panel的控件显示嵌 ...
 - nginx 启动,停止和重新加载配置
		
要启动nginx的,运行可执行文件.一旦nginx的启动时,它可以通过与-s参数调用可执行来控制.使用以下语法 nginx -s signal 其中,信号可以是下列之一: stop - fast sh ...
 - ecshop 工作流程加载配置介绍
		
ecshop 工作流程加载配置介绍 分类: ecshop2014-09-14 09:36 729人阅读 评论(2) 收藏 举报 模板引擎工作流 这里简单介绍下echsop工作流程: 首先,你会发现一般 ...
 
随机推荐
- vue-router 通过路由来实现切换头部标题
			
在做单页面应用程序时,一般页面布局头尾两块都是固定在布局页面,中间为是路由入口.这时访问页面时头部标题不会变,该问题的解决方案如下: 通过采用组件内路由卫士(beforeRouterEnter.bef ...
 - JavaScript局部变量变量和函数命名提升
			
之前接触了一些javascript局部变量命名提升的问题但是一直没有总结今天特地好好总结一下 变量提升 一个变量的作用域是程序源代码中定义的这个变量的区域.全局变量拥有全局作用域,在javascrip ...
 - react异步加载组件
			
1. 创建 asyncComponent 异步加载工具 import React from 'react' function asyncComponent(loadComponent){ class ...
 - Android编程示例:创建机场计划模拟器应用程序
			
在本文中,我们将演示如何使用Android Studio和Java编程语言创建一个示例Android应用程序,从“临时”实现高级响应用户界面的功能.本文中讨论的应用程序将实现机场航班时刻表模拟的功能. ...
 - hbase 工作原理
			
一.HBASE介绍HBase是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建大规模结构化的存储集群.HBase的目标是存储并处理大型数据,具体 ...
 - CynosDB技术详解——架构设计
			
本文由腾讯云数据库发表 前言 CynosDB是新一代分布式数据库,100%兼容MySQL和PostgreSQL,支持存储弹性扩展,一主多从共享数据,性能更是超越社区原生MySQL和PostgreSQL ...
 - easyui实现分页
			
主要参考官方的文档,欢迎评论 1.集成easyui,下面是我的引入方式,我引入到了head.html 每次只要引入该页面就可以了. <!-- easyui样式支持 --><link ...
 - idea右键无法生成javaclass
			
博客转自:https://www.cnblogs.com/zjfjava/p/9219237.html 项目中新建目录之后,要在该目录下新增java Class文件,右键——>New发现无对应选 ...
 - 基本MVVM 和 ICommand用法举例(转)
			
引言 在本贴中,我们将学习WPF Commands. Commands 可以很好地与 MVVM 模式 (Model- View-ViewModel)结合在一起.我们也将看到,视图(view)实际上是怎 ...
 - 用golang写了个统计各单位报送的信息数量的微服务
			
代码很乱,bug很多,将就着看吧.参考了很多网上代码,只能说声感谢了. //cjl.ZongHeInfo.1.0 //目的:对各部门报上来的信息数量进行排名 //思路:预计一年信息量不超过100M,全 ...