python日志处理程序将数据发送到支持SSL/TLS的Logstash服务器

logstashp的Python项目详细描述


logstashpy:支持SSL/TLS的logstash的python日志处理程序

Licenseimageimageimageimage

image

{和}的原始项目}也来自这个项目的^代码 这里也集成了一些,比如SSL/TLS支持。此外,它计划支持更多的序列化格式 在logstash编解码器中支持。目前msgpack已集成。在

一些旧的格式化程序已经发布,但ELK stack现在促进了ECS的使用。退房ecs-logging 获取最新更新。对于所有处理程序,默认格式化程序现在是ecs日志中的StdlibFormatter,但您可以始终选择 其他格式化程序或旧格式化程序。在

目前,__init__.py下的__all__没有公开的类,因为API将来可能会更改。在

安装

要安装logstashpy,只需使用all time favorite pip并键入:

$ pip install logstashpy✨

使用

^{pr2}$

SSL/TLS支持

默认情况下启用SSL。在处理程序的构造函数中禁用传递ssl=False。在

要快速设置SSL/TLS相关证书,请执行以下命令:

为证书颁发机构生成证书(对于自签名证书)

生成CA密钥(类似于CA的私钥,会提示输入密码,确保安全)

openssl genrsa -des3 -out localCA.key 2048

生成CA pem文件(类似于CA的公钥)

openssl req -x509 -new -nodes -key localCA.key -sha256 -days 1024 -out localCA.pem

现在我们有一个本地证书颁发机构准备签署一些证书。在

让我们为本地logstash服务器生成一些私钥和CSR(证书签名请求) 它将由我们当地的证书颁发机构签署。您可以在这里传递一些其他配置,但为了简单起见,请留在这里。在

openssl req -new -sha256 -nodes -out logserver.csr -newkey rsa:2048 -keyout logserver.key

让我们将CSR提交到本地CA并获取证书(作为保护,系统将提示您输入之前设置的密码)

openssl x509 -req -in server.csr -CA localCA.pem -CAkey localCA.key -CAcreateserial -out logserver.crt -days 1000 -sha256

你会得到一个日志服务器.crt哪个logstash服务器可以提供给它的客户端,有效期为1000天。在

Python版本支持

logstashpy支持python3

Logstash配置示例

示例Logstash配置(logstash.conf)通过TCP从logstashpy接收事件(省略ssl 相关字段(如果不需要):

input {
  tcp {
    port => 5959
    codec => json
    ssl_enable => true
    ssl_cert => "/path/to/server.crt"
    ssl_key => "/path/to/server.key"
    ssl_verify => false
  }
}
output {
   stdout {
     codec => rubydebug
   }
}

文件

马上就来。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
无法在Netbeans 8.2 JDK8u231中创建java Maven项目(Web应用程序)   java如何以设定的时间间隔生成随机数?   java从socket和inputStream的慢速读取   spring SCORM:Java中基于Web的SCORM播放器   Java将函数传递给方法   java绑定通用服务及其实现和子类型   java如何在运行时从选择列表框中动态选择选项?爪哇硒   java Selenium WebDriver什么是“Selenium客户端和WebDriver语言绑定”   elasticsearch需要elasticsearch高级Java客户端更新ByQueryRequest API帮助   JAVA哈希表查找最大值   WSDL操作中的java soapAction属性为空   java访问封闭类或父类方法的一般方法   eclipse在java中运行带有SeleneTestCase的ANT。lang.NoClassDefFoundError   java Hazelcast不会在节点启动时填充ReplicatedMap   如何在Java中从excel中读取特定行?   html JAVA将本地时间(GMT+8)转换为UTC时间   java将自定义端点添加到Spring数据REST存储库中,并以大摇大摆的方式显示   java计算未来位置