该应用程序旨在替代 udplogbeat。虽然非常相似,但它确实有一些改进,并允许您通过 UDP 或 TCP 启动。它可以接受纯文本或 JSON 日志,也可以充当系统日志目标替代品。
确保此文件夹位于以下位置: ${GOPATH}/github.com/harfordfive
protologbeat.protocol
: tcp或udp (默认:udp)protologbeat.address
:进程将监听的地址(默认:127.0.0.1)protologbeat.port
:进程将侦听的端口(默认 = 5000)protologbeat.max_message_size
:接受的最大消息大小(默认= 4096)protologbeat.json_mode
:仅记录 JSON 格式的消息(默认 = false)protolog.merge_fields_to_root
:当json_mode启用时,是否将解析的字段合并到根级别。 (默认=假)protologbeat.default_es_log_type
:如果未指定,分配给事件的 Elasticsearch 类型(默认:protologbeat)protologbeat.enable_syslog_format_only
:指示是否仅接受系统日志消息的布尔值。 (默认=假)protologbeat.enable_gelf
:布尔值,指示进程是否应处于仅接受 GELF 格式消息的模式protologbeat.enable_json_validation
:布尔值,指示是否应对json
格式消息应用 JSON 模式验证(默认 = false)protologbeat.validate_all_json_types
:当启用 json_mode 时,指示是否所有类型都必须指定模式。没有架构的类型的日志条目将不会被发布。 (默认=假)protologbeat.json_schema
:由 Elasticsearch 类型作为键、绝对本地模式文件路径作为值组成的哈希。以下是protologbeat
部分的配置块示例。
JSON 模式可以从此处的对象自动生成:http://jsonschema.net/。您还可以查看 email_contact 和 stock_item 架构作为示例。
请参阅_samples/
目录以获取各种语言的客户端示例。
要运行 Protologbeat 并安装依赖项,请运行以下命令:
make setup
它将为每个主要步骤创建一个干净的 git 历史记录。请注意,如果您愿意,在推送更改之前您可以随时重写历史记录。
要将 Protologbeat 推送到 git 存储库,请运行以下命令:
git remote set-url origin https://github.com/harfordfive/protologbeat
git push origin master
如需进一步开发,请查看beat开发者指南。
要构建 Protologbeat 的二进制文件,请运行以下命令。这将在同一目录中生成一个名为 protologbeat 的二进制文件。
make
如果您想为 OSX、Linux 和/或 Windows 构建二进制文件,您可以运行以下命令:
./build-bin [TAG_VERSION]
生成的二进制文件将放置在bin/
目录中
要在启用调试输出的情况下运行 Protologbeat,请运行:
./protologbeat -c protologbeat.yml -e -d "*"
要测试 Protologbeat,请运行以下命令:
make testsuite
或者:
make unit-tests
make system-tests
make integration-tests
make coverage-report
测试覆盖率在文件夹./build/coverage/
中报告
每个beat都有一个用于在elasticsearch中映射的模板以及基于etc/fields.yml
自动生成的字段文档。生成etc/protologbeat.template.json和etc/protologbeat.asciidoc
make update
要清理 Protologbeat 源代码,请运行以下命令:
make fmt
make simplify
要清理构建目录和生成的工件,请运行:
make clean
要从 git 存储库克隆 Protologbeat,请运行以下命令:
mkdir -p ${GOPATH}/github.com/harfordfive
cd ${GOPATH}/github.com/harfordfive
git clone https://github.com/harfordfive/protologbeat
如需进一步开发,请查看beat开发者指南。
您可以在此处找到此节拍的 Docker 镜像。请注意,容器以基本配置启动,该配置侦听默认协议/地址/端口并接受纯文本消息。对于任何自定义,请修改示例 protologbeat.full.yml 配置并创建您自己的 Docker 文件来覆盖原始文件。
Beat 框架提供了针对不同平台交叉编译和打包 Beat 的工具。这需要如上所述的 docker 和供应商。要构建节拍包,请运行以下命令:
make package
这将获取并创建构建过程所需的所有图像。完成打孔过程可能需要几分钟。