elasticsearch,logstash,kibana,Ruby On Rails,Nginx,elasticsearch,Logstash,Kibana" /> elasticsearch,logstash,kibana,Ruby On Rails,Nginx,elasticsearch,Logstash,Kibana" />

Ruby on rails 如何测试ElasticSearch Logstash和Kibana

Ruby on rails 如何测试ElasticSearch Logstash和Kibana,ruby-on-rails,nginx,elasticsearch,logstash,kibana,Ruby On Rails,Nginx,elasticsearch,Logstash,Kibana,我已经在Debian服务器上安装了elasticsearch、logstash和kibana。问题是Kibana没有显示任何统计数据或日志。我不知道出了什么问题,也不知道如何调试这个问题。当我测试每个组件(elasticsearch、kibana和logstash)时,一切看起来都正常工作 弹性搜索测试 正在检查elasticsearch群集状态: curl'localhost:9200/_集群/health?v' 正在检查elasticsearch节点状态: curl'localhos

我已经在Debian服务器上安装了elasticsearch、logstash和kibana。问题是Kibana没有显示任何统计数据或日志。我不知道出了什么问题,也不知道如何调试这个问题。当我测试每个组件(elasticsearch、kibana和logstash)时,一切看起来都正常工作

弹性搜索测试
  • 正在检查elasticsearch群集状态:
curl'localhost:9200/_集群/health?v'

  • 正在检查elasticsearch节点状态:
curl'localhost:9200/_cat/nodes?v'

  • 正在检查elasticsearch索引状态:
curl'localhost:9200/_cat/index?v'

  • 正在检查elasticsearch服务状态:
$service elasticsearch状态

ElasticSearch也可以从我的浏览器中的localhost:9200访问,并列出正确的索引

/etc/nginx/sites available/elasticsearch file=>

server {
  listen 443;
  server_name es.xxx.yyy.com;
  ssl on;
  ssl_certificate /etc/elasticsearch/ssl/es_domain.crt;
  ssl_certificate_key /etc/elasticsearch/ssl/es_domain.key;
  access_log /var/log/nginx/elasticsearch/access.log;
  error_log /var/log/nginx/elasticsearch/error.log debug;
  location / {
    rewrite ^/(.*) /$1 break;
    proxy_ignore_client_abort on;
    proxy_pass http://localhost:9200;
    proxy_redirect http://localhost:9200 http://es.xxx.yyy.com/;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    auth_basic "Elasticsearch Authentication";
    auth_basic_user_file /etc/elasticsearch/user.pwd;
  }
}

server{
  listen 80;
  server_name es.xxx.yyy.com;
  return 301 https://$host$request_uri;
}
server {
  listen 443;
  server_name kibana.xxx.yyy.com;
  ssl on;
  ssl_certificate /opt/kibana/ssl/es_domain.crt;
  ssl_certificate_key /opt/kibana/ssl/es_domain.key;
  access_log /var/log/nginx/kibana/access.log;
  error_log /var/log/nginx/kibana/error.log debug;
  location / {
    rewrite ^/(.*) /$1 break;
    proxy_ignore_client_abort on;
    proxy_pass http://localhost:5601;
    proxy_redirect http://localhost:5601 http://kibana.xxx.yyy.com/;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    auth_basic "Kibana Authentication";
    auth_basic_user_file /etc/nginx/htpasswd.users;
  }
}

server{
  listen 80;
  server_name kibana.xxx.yyy.com;
  return 301 https://$host$request_uri;
}
input {
  file {
    type => "rails"
    path => "/srv/www/xxx.yyy.com/site/log/logstasher.log" 
    codec => json {
      charset => "UTF-8"
    }
  }
}

output {
  elasticsearch {
   host => 'localhost'
   port => 9200
  }
}
基巴纳试验 $service kibana4状态

/etc/nginx/sites available/kibana file=>

server {
  listen 443;
  server_name es.xxx.yyy.com;
  ssl on;
  ssl_certificate /etc/elasticsearch/ssl/es_domain.crt;
  ssl_certificate_key /etc/elasticsearch/ssl/es_domain.key;
  access_log /var/log/nginx/elasticsearch/access.log;
  error_log /var/log/nginx/elasticsearch/error.log debug;
  location / {
    rewrite ^/(.*) /$1 break;
    proxy_ignore_client_abort on;
    proxy_pass http://localhost:9200;
    proxy_redirect http://localhost:9200 http://es.xxx.yyy.com/;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    auth_basic "Elasticsearch Authentication";
    auth_basic_user_file /etc/elasticsearch/user.pwd;
  }
}

server{
  listen 80;
  server_name es.xxx.yyy.com;
  return 301 https://$host$request_uri;
}
server {
  listen 443;
  server_name kibana.xxx.yyy.com;
  ssl on;
  ssl_certificate /opt/kibana/ssl/es_domain.crt;
  ssl_certificate_key /opt/kibana/ssl/es_domain.key;
  access_log /var/log/nginx/kibana/access.log;
  error_log /var/log/nginx/kibana/error.log debug;
  location / {
    rewrite ^/(.*) /$1 break;
    proxy_ignore_client_abort on;
    proxy_pass http://localhost:5601;
    proxy_redirect http://localhost:5601 http://kibana.xxx.yyy.com/;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    auth_basic "Kibana Authentication";
    auth_basic_user_file /etc/nginx/htpasswd.users;
  }
}

server{
  listen 80;
  server_name kibana.xxx.yyy.com;
  return 301 https://$host$request_uri;
}
input {
  file {
    type => "rails"
    path => "/srv/www/xxx.yyy.com/site/log/logstasher.log" 
    codec => json {
      charset => "UTF-8"
    }
  }
}

output {
  elasticsearch {
   host => 'localhost'
   port => 9200
  }
}
Kibana也可以在我的浏览器中从localhost:5601访问,没有任何问题

对数存储测试 $sudo/etc/init.d/logstash状态

/etc/logstash/conf.d/01-ais-input.conf文件=>

server {
  listen 443;
  server_name es.xxx.yyy.com;
  ssl on;
  ssl_certificate /etc/elasticsearch/ssl/es_domain.crt;
  ssl_certificate_key /etc/elasticsearch/ssl/es_domain.key;
  access_log /var/log/nginx/elasticsearch/access.log;
  error_log /var/log/nginx/elasticsearch/error.log debug;
  location / {
    rewrite ^/(.*) /$1 break;
    proxy_ignore_client_abort on;
    proxy_pass http://localhost:9200;
    proxy_redirect http://localhost:9200 http://es.xxx.yyy.com/;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    auth_basic "Elasticsearch Authentication";
    auth_basic_user_file /etc/elasticsearch/user.pwd;
  }
}

server{
  listen 80;
  server_name es.xxx.yyy.com;
  return 301 https://$host$request_uri;
}
server {
  listen 443;
  server_name kibana.xxx.yyy.com;
  ssl on;
  ssl_certificate /opt/kibana/ssl/es_domain.crt;
  ssl_certificate_key /opt/kibana/ssl/es_domain.key;
  access_log /var/log/nginx/kibana/access.log;
  error_log /var/log/nginx/kibana/error.log debug;
  location / {
    rewrite ^/(.*) /$1 break;
    proxy_ignore_client_abort on;
    proxy_pass http://localhost:5601;
    proxy_redirect http://localhost:5601 http://kibana.xxx.yyy.com/;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    auth_basic "Kibana Authentication";
    auth_basic_user_file /etc/nginx/htpasswd.users;
  }
}

server{
  listen 80;
  server_name kibana.xxx.yyy.com;
  return 301 https://$host$request_uri;
}
input {
  file {
    type => "rails"
    path => "/srv/www/xxx.yyy.com/site/log/logstasher.log" 
    codec => json {
      charset => "UTF-8"
    }
  }
}

output {
  elasticsearch {
   host => 'localhost'
   port => 9200
  }
}

这些服务和配置文件有什么问题吗?每个组件看起来都工作正常,但我在Kibana界面中看不到任何东西。如何测试麋鹿堆栈?

您需要在Kibana中配置索引模式以查看elasticsearch数据

  • 从浏览器中打开Kibana
    http://localhost:5601
  • 点击设置
  • 键入现有索引名,然后单击“创建”。(取消选中“索引包含基于时间的事件”选项,除非您的索引包含日志或任何基于时间戳的数据)
  • 执行此操作时,您必须能够查看所有elasticsearch文档


    您是否已将Kibana配置为加载elasticsearch索引?我如何配置Kibana?问题是,我在“发现”、“可视化”或“仪表板”选项卡下看不到任何内容。我想看看那些奇特的统计数据和地图。另外,如何为日志编制索引?当我检查我的elasticsearch索引时,我看不到任何与日志相关的内容。你试过我在上面发布的答案了吗?使用上述步骤将索引添加到Kibana后,您可以在可视化屏幕中配置参数以查看“奇特”统计信息。我知道这是一个旧答案,但我仍停留在第3点。如何以及在何处查找现有索引名?我想我将使用kabana创建索引?或者在这之前我需要创建索引吗?Kibana只是为了可视化。您需要通过Elasticsearch创建索引。这就是创建索引的方法-