python源代码中的logstash.conf文件放在哪里?
我的主要目的是将日志发送到Kiabana,我得到了python源代码中的logstash.conf文件放在哪里?,python,logstash,kibana,Python,Logstash,Kibana,我的主要目的是将日志发送到Kiabana,我得到了日志库的主机和端口(我的老板给了我) 从本网站:https://pypi.org/project/python-logstash/我有这样一个示例代码: import logging import logstash import sys host = '182.2....' test_logger = logging.getLogger('python-logstash-logger') test_logger.setLevel(loggin
日志库的主机和端口(我的老板给了我)
从本网站:https://pypi.org/project/python-logstash/
我有这样一个示例代码:
import logging
import logstash
import sys
host = '182.2....'
test_logger = logging.getLogger('python-logstash-logger')
test_logger.setLevel(logging.INFO)
test_logger.addHandler(logstash.LogstashHandler(host, 5959, version=1))
# test_logger.addHandler(logstash.TCPLogstashHandler(host, 5959, version=1))
test_logger.error('python-logstash: test logstash error message.')
test_logger.info('python-logstash: test logstash info message.')
test_logger.warning('python-logstash: test logstash warning message.')
# add extra field to logstash message
extra = {
'test_string': 'python version: ' + repr(sys.version_info),
'test_boolean': True,
'test_dict': {'a': 1, 'b': 'c'},
'test_float': 1.23,
'test_integer': 123,
'test_list': [1, 2, '3'],
}
test_logger.info('python-logstash: test extra fields', extra=extra)
我查过了,但我在Kibana上什么也没看到。(我被告知选择索引
),但我没有看到示例代码上设置了索引
然后经过研究,我听说我需要设置一个名为logstash.conf
configuration的文件,它应该是这样的
input {
udp {
port => 5959
codec => json
}
}
output {
stdout {
codec => rubydebug
}
}
但我不知道该把文件放在哪里
它应该与我的.py
代码文件位于同一目录中
我看不到我的.py
代码文件和logstash.conf
文件之间有任何联系
请帮忙 您正在使用的python logstash库是一个帮助您向logstash发送数据的库,它与您粘贴的logstash.conf
无关
您共享的logstash.conf
是一个logstash配置,它应该在logstash的config目录中,但是这个配置不会向Elasticsearch发送任何内容,您在Kibana中也不会看到任何内容,您需要一个将输出到Elasticsearch的配置,类似这样的配置
input {
udp {
port => 5959
codec => json
}
}
output {
elasticsearch {
hosts => ["your-elasticsearch-host:port"]
index => "your-index-name"
}
}
您或您公司的某个人需要在Logstash中创建一个管道,以便在该端口接收数据并将其发送给Elasticsearch,这样您就可以使用Kibana可视化数据
python脚本只需要logstash的端口和主机来发送数据,除此之外,python脚本和logstash配置之间没有连接