1. input {
  2. kafka {
  3. bootstrap_servers => "127.0.0.1:9092"
  4. client_id => "log"
  5. auto_offset_reset => "latest"
  6. consumer_threads =>
  7. decorate_events => true
  8. topics => ["nginx_access_log_test"]
  9. codec => "json"
  10. type => "nginx_log"
  11. }
  12. }
  13.  
  14. filter {
  15. mutate {
  16. gsub => ["message", "\\x22", '"']
  17. gsub => ["message", "\\x09", '']
  18. }
  19. json {
  20. source => "message"
  21. remove_field=>["message","beat","@version"]
  22. }
  23.  
  24. ruby {
  25. code => '
  26. file = File.open("/usr/local/logstash/config/white.txt", "r")
  27. text = file.read
  28. file.close
  29.  
  30. if !text.include?(event.get("request_uri")) then
  31. event.set("es_flag","")
  32. else
  33. event.set("es_flag","")
  34. end
  35. '
  36. }
  37. }
  38.  
  39. output {
  40. if [es_flag] ==""
  41. {
  42. elasticsearch
  43. {
  44. hosts => "127.0.0.1:9200"
  45. index => "nginx_access_log_test"
  46. }
  47.  
  48. }
  49. else
  50. {
  51. elasticsearch
  52. {
  53. hosts => "127.0.0.1:9200"
  54. index => "nginx_access_log_test2"
  55. }
  56.  
  57. }
  58. stdout {
  59. codec => rubydebug
  60. }
  61. }

复杂点的生产环境配置:

  1. input{
  2. kafka {
  3. bootstrap_servers => "127.0.0.1:9092"
  4. client_id => "nginxaccesslog"
  5. auto_offset_reset => "latest"
  6. consumer_threads =>
  7. decorate_events => true
  8. topics => ["nginx_access_log"]
  9. codec => "json"
  10. type => "nginx_log"
  11. }
  12. kafka {
  13. bootstrap_servers => "127.0.0.1:9092"
  14. client_id => "database"
  15. auto_offset_reset => "latest"
  16. consumer_threads =>
  17. decorate_events => true
  18. topics => ["dsideal_db"]
  19. codec => "json"
  20. type => "dsideal_db"
  21. }
  22. kafka {
  23. bootstrap_servers => "127.0.0.1:9092"
  24. client_id => "devops_real"
  25. auto_offset_reset => "latest"
  26. consumer_threads =>
  27. decorate_events => true
  28. topics => ["devopsrealinfo"]
  29. codec => "json"
  30. type => "devopsrealinfo"
  31. }
  32. kafka {
  33. bootstrap_servers => "127.0.0.1:9092"
  34. client_id => "devops_base"
  35. auto_offset_reset => "latest"
  36. consumer_threads =>
  37. decorate_events => true
  38. topics => ["devopsbaseinfo"]
  39. codec => "json"
  40. type => "devopsbaseinfo"
  41. }
  42. }
  43. filter{
  44. mutate {
  45. gsub => ["message", "\\x22", '"']
  46. gsub => ["message", "\\x09", '']
  47. }
  48. json {
  49. source => "message"
  50. remove_field=>["message","beat","@version","@timestamp"]
  51. }
  52. if [type] == "nginx_log" {
  53. ruby {
  54. code => '
  55. file = File.open("/usr/local/logstash/config/white.txt", "r")
  56. text = file.read
  57. file.close
  58.  
  59. if !text.include?(event.get("request_uri")) then
  60. event.set("es_flag","")
  61. else
  62. event.set("es_flag","")
  63. end
  64.  
  65. '
  66. }
  67. }
  68.  
  69. }
  70.  
  71. output {
  72. if [type] == "nginx_log" {
  73. if [es_flag] =="" {
  74. elasticsearch {
  75. hosts => "127.0.0.1:9200"
  76. index => "nginx-access-log"
  77. }
  78. }
  79. else {
  80. elasticsearch {
  81. hosts => "127.0.0.1:9200"
  82. index => "nginx-access-log-other"
  83. }
  84. }
  85. }
  86. if [type] == "dsideal_db" {
  87. elasticsearch {
  88. hosts => "127.0.0.1:9200"
  89. index => "%{table_name}"
  90. document_id => "%{id}"
  91. }
  92. }
  93. if [type] == "devopsbaseinfo" {
  94. elasticsearch {
  95. hosts => "127.0.0.1:9200"
  96. index => "devopsbaseinfo"
  97. document_id => "%{id}"
  98. }
  99. }
  100. if [type] == "devopsrealinfo" {
  101. elasticsearch {
  102. hosts => "127.0.0.1:9200"
  103. index => "devopsrealinfo"
  104. }
  105. }
  106. }

logstash配置白名单决定去哪个index的更多相关文章

  1. servlet过滤器配置白名单、黑名单

    1.web.xml配置 <filter> <description>过滤是否登陆</description> <filter-name>encoding ...

  2. Confluence 6 配置白名单

    Confluence 管理员可以通过添加 URLs 到白名单选择出入的链接和使用 RSS 宏,HTML 包含宏和小工具中的内容. 如果一个内容被添加到 Confluence 系统中,但是这个 URLs ...

  3. ubuntu apache2.4.7配置白名单

    1.仅允许192.168.1.1访问,此处需要注意apache2.2和2.4版本之后白名单配置的方法是不一样的 <Directory /var/www/> Options FollowSy ...

  4. nginx配置白名单

    配置如下: http模块: http { include mime.types; default_type application/octet-stream; #log_format main '$r ...

  5. 【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果

    当使用Azure Redis高级版时候,为了能更好的保护Redis的安全,启用了虚拟网路,把Redis集成在Azure中的虚拟网络,只能通过虚拟网络VENT中的资源进行访问,而公网是不可以访问的.但是 ...

  6. axios 封装 跨域 实现 (后端跨域配置白名单)

    1. 始vue化项目 vue init webpack deaxios # 使用脚手架创建项目 deaxios(项目名,随便取得) cd deaxios # 进入项目cnpm install npm ...

  7. nginx 配置白名单

    在http 模块 增加 geo $remote_addr $ip_whitelist{ default 0; include white_ip.conf; } 在location 模块 增加 (注意i ...

  8. mysql配置白名单

    1. 测试是否允许远程连接 $ telnet 192.168.1.8 3306 host 192.168.1.4 is not allowed to connect to this mysql ser ...

  9. xinetd黑/白名单配置教程(以telnet为例)

    对于诸如telnet等托管于xinetd的服务,当请求到来时由于是通过xinetd进行通知,所以可以直接在xinetd上配置白名单允许和拒绝哪些ip连接服务. 本文主要参考xinetd.conf的ma ...

随机推荐

  1. 在Linux环境下使用Apache部署ASP.NET Core

    在前几篇文章中我们一起探讨了如何在Linux环境中安装ASP.NET Core运行时环境及将ASP.NET Core项目部署在Jexus中,这篇文章中我们将探讨如何将ASP.NET Core部署于Ap ...

  2. np.nonzero()函数用法

    返回数组中不为0的元素的下标. 数组中元素可为布尔.整型和浮点型,返回值为元祖 一.一维数组 1.数组元素为布尔类型 a=np.array([True,False,True,False]) b=np. ...

  3. 2018牛客暑期ACM多校训练营第一场(有坑未填)

    (重新组队后的第一场组队赛 也是和自己队友的一次磨合吧 这场比赛真的算是一个下马威吧……队友上手一看 啊这不是莫队嘛 然后开敲 敲完提交发现t了 在改完了若干个坑点后还是依然t(真是一个悲伤的故事)然 ...

  4. Linker Scripts3--简单的链接脚本命令1

    1.前言 这个部分我们描述了简单的链接脚本命令 2.设置entry point 程序中第一条运行的指令被称为入口点entry point,可以使用ENTRY链接脚本命令设置entry point,参数 ...

  5. k64 datasheet学习笔记12---System Integration Module (SIM)

    1.前言 Features of the SIM include: System clocking configuration(1)System clock divide values(2) Arch ...

  6. CPU 利用率背后的真相,只有 1% 人知道【转】

    导读:本文翻译自 Brendan Gregg 去年的一篇博客文章 “CPU Utilization is Wrong”,从标题就能想到这篇文章将会引起争议.文章一上来就说,我们“人人皆用.处处使用,每 ...

  7. events.py 知识点记录

    1.__all__ __all__是一个字符串list,其他模块中使用from xxx import *的时候只能导入__all__列表里的内容 2.sys.version_info 获取版本号 im ...

  8. ADO读写DateTime方式

    // 读取日期 var = m_pResultSet->GetCollect(_variant_t("Birth_Time")); DATE dt = var.date; C ...

  9. VC操作excel

    http://www.cnblogs.com/witxjp/archive/2010/06/05/1752181.html   最近在做个数据库程序,因为有些数据用户要求导出到Excel文件显示(需要 ...

  10. 搭建Unity安卓开发环境

    原文见 https://blog.csdn.net/chenggong2dm/article/details/20654075 tiny教程 https://docs.unity3d.com/Pack ...