我使用此配置读取了我的日志文件(cron_log,auth_log,mail_log等):
file{
path => '/path/to/log/file/*_log'
}
Run Code Online (Sandbox Code Playgroud)
所以我读了我的日志文件并检查:
if(path) ~= "cron" -----match--------
if(path) ~= "auth" -----match--------
Run Code Online (Sandbox Code Playgroud)
现在我有一个目录,如:Server1 Server2 Server3......在Server 1子目录中:authlog cronlog.....在authlog内部有子目录日期明智(如2014.05.26, 2014.05.27)最终包含当天的日志文件,我必须解析.
所以目前我有一个用于读取文件的配置文件, *_log 我用它来运行该配置文件并/path/to/log/file/*_log解析了所有存在的日志文件.
现在我必须从许多目录中读取(如上所述).
我是否必须为每个目录编写单独的配置文件?
使用logstash实现这一目标的最佳方法是什么?
我正在使用 Elasticsearch 2.2.0;但是,我真的很难尝试添加 geo_point 数据。事实上,地理编码数据被添加为字符串。
预期:"geo":{"properties":{"location":{"type":"geo_point"}}}
实际:"geo":{"properties":{"location":{"type":"string"}}}
我通过以下方式在python中添加数据:
from elasticsearch import Elasticsearch
es = Elasticsearch()
# ...
es_entries['geo'] = { 'location': str(data['_longitude_'])+","+str(data['_latitude_'])}
# ...
es.index(index="geodata", doc_type="doc", body=es_entries)
Run Code Online (Sandbox Code Playgroud)
有没有关于通过python添加geo_point数据的教程(这不像看起来那么简单)?
我有不同日志级别的日志,我想设计一个日期直方图,就像图片底部的那个:
在特定日期,它应该显示带有红色的 WARN 日志和上面带有蓝色的 INFO 日志。我也没有索引日志级别。但我确实有 INFO 和 WARN 作为保存的搜索。
我正在尝试使用 Filebeat 将我的 K8s pod 日志发送到 Elasticsearch。
我在这里在线遵循指南:https : //www.elastic.co/guide/en/beats/filebeat/6.0/running-on-kubernetes.html
一切都按预期工作,但是我想从系统 pod 中过滤掉事件。我更新的配置看起来像:
apiVersion: v1
kind: ConfigMap
metadata:
name: filebeat-prospectors
namespace: kube-system
labels:
k8s-app: filebeat
kubernetes.io/cluster-service: "true"
data:
kubernetes.yml: |-
- type: log
paths:
- /var/lib/docker/containers/*/*.log
multiline.pattern: '^\s'
multiline.match: after
json.message_key: log
json.keys_under_root: true
processors:
- add_kubernetes_metadata:
in_cluster: true
namespace: ${POD_NAMESPACE}
- drop_event.when.regexp:
or:
kubernetes.pod.name: "weave-net.*"
kubernetes.pod.name: "external-dns.*"
kubernetes.pod.name: "nginx-ingress-controller.*"
kubernetes.pod.name: "filebeat.*"
Run Code Online (Sandbox Code Playgroud)
我试图忽视weave-net,external-dns,ingress-controller并filebeat通过事件:
- drop_event.when.regexp:
or:
kubernetes.pod.name: "weave-net.*"
kubernetes.pod.name: "external-dns.*"
kubernetes.pod.name: …Run Code Online (Sandbox Code Playgroud) 以另一个问题为例
product = Product.find(10)
`raise_record_not_found_exception!'
product.nil?
=> true
product = Product.search "*", where: {id: 10}, load: false
product.count
=> 1
Run Code Online (Sandbox Code Playgroud)
如何在没有干净擦拭的情况下取出文档?
谢谢
我需要创建一个在控制室中使用的仪表板,其中一群操作员需要监控分配给其他员工的任务数量(以及其他方面)。
源数据将来自 RDBM(在本例中为 PostgreSQL)。我们人有分配和编号的任务也有一个状态,而DB数据是这样的(纯属虚构:但它类似于真实的)
必须创建和维护一个仪表板,我想使用 Grafana、Kibana 或类似工具来绘制这样的图
问题是,例如,Grafana不允许我对 x-axis 使用字母值。它只允许数字值,而我有名字要绘制(马克、卢克、布赖恩)。
有没有我可以遵循的最佳实践?我是否试图使用错误的工具?
我在这里阅读了对我的问题的解释:
https://discuss.elastic.co/t/whats-the-diferece-between-index-pattern-and-index-template/54948
但是,我仍然不明白其中的区别。在定义索引 PATTERN 时,是否完全不影响索引创建?另外,如果我创建了一个索引但它没有相应的索引模式会发生什么?如何查看用于索引模式的映射,以便知道如何使用 Mapping API 来更新它?
附带说明一下,文档说您可以通过单击“设置”然后单击“索引”选项卡来管理索引模式。我正在查看 Kibana,但没有看到任何设置选项卡。我可以通过管理选项卡查看索引模式,但在那里看不到任何设置选项卡
我尝试在本地设置 fluentd-elasticsearch 时尝试访问 Kibana 仪表板。这是我遵循的链接。我检查了 Kibana pod 的日志。它显示以下错误:
{"type":"log","@timestamp":"2018-09-19T21:45:42Z","tags":["warning","config","deprecation"],"pid":1,"message":"You should set server.basePath along with server.rewriteBasePath. Starting in 7.0, Kibana will expect that all requests start with server.basePath rather than expecting you to rewrite the requests in your reverse proxy. Set server.rewriteBasePath to false to preserve the current behavior and silence this warning."}
root@mTrainer3:/logging# kubectl logs kibana-logging-66d577d965-mbbg5 -n kube-system
{"type":"log","@timestamp":"2018-09-19T21:45:42Z","tags":["warning","config","deprecation"],"pid":1,"message":"You should set server.basePath along with server.rewriteBasePath. Starting in 7.0, Kibana will expect that all requests start with server.basePath rather …Run Code Online (Sandbox Code Playgroud) 我为 oracle 配置了 logstash 连接但不起作用。
错误:无法加载 c:\ojdbc8.jar
对于这种情况,您有什么解决方案吗?
input {
jdbc {
jdbc_connection_string => "jdbc:oracle:thin:@192.168.10.10:1521/TESTDB"
jdbc_user => "SCOTT"
jdbc_password => "TIGER"
#jdbc_validate_connection => true
jdbc_driver_library => "C:\ojdbc8.jar"
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
statement => "SELECT * FROM SALES_DATA_SAMPLE"
}
}
output {
elasticsearch {
index => "salesdata"
document_type => "salesdata"
document_id => "%{uid}"
hosts => "localhost:9200"
}
}
Run Code Online (Sandbox Code Playgroud) 我是使用docker并尝试将elastalert插件添加到我的kibana映像的新手。我正在使用Kibana 7.0.1和Elasticsearch 7.0.1并尝试使用github的elastalert 7.0.1 kibana插件。当我docker-compose up使用下面的docker-compose.yml文件运行时,它似乎确实安装了插件,但实际上并未启动kibana。我是否错过了另一个命令?谢谢
services:
...
kibana:
image: docker.elastic.co/kibana/kibana:7.0.1
...
command: ./bin/kibana-plugin install https://github.com/bitsensor/elastalert-kibana-plugin/releases/download/1.0.4/elastalert-kibana-plugin-1.0.4-7.0.1.zip
Run Code Online (Sandbox Code Playgroud) kibana ×10
kubernetes ×2
dashboard ×1
docker ×1
elastalert ×1
filebeat ×1
fluentd ×1
grafana ×1
histogram ×1
kibana-4 ×1
logging ×1
logstash ×1
ojdbc ×1
oracle ×1
postgresql ×1
python ×1
searchkick ×1