- Logstash 参考文档其他版本
- Logstash 简介
- Logstash 入门
- Logstash 的工作原理
- 设置和运行 Logstash
- 升级 Logstash
- 创建 Logstash 管道
- 保护您的连接
- 高级 Logstash 配置
- Logstash 到 Logstash 通信
- 管理 Logstash
- 将 Logstash 与 Elastic Integrations 一起使用
- 使用 Logstash 模块
- 使用 Filebeat 模块
- 使用 Winlogbeat 模块
- 队列和数据弹性
- 转换数据
- 部署和扩展 Logstash
- 管理 GeoIP 数据库
- 性能调优
- 使用 Elastic Agent 监控 Logstash
- 监控 Logstash(旧版)
- 使用 API 监控 Logstash
- 使用插件
- 集成插件
- 输入插件
- azure_event_hubs
- beats
- cloudwatch
- couchdb_changes
- dead_letter_queue
- elastic_agent
- elastic_serverless_forwarder
- elasticsearch
- exec
- file
- ganglia
- gelf
- generator
- github
- google_cloud_storage
- google_pubsub
- graphite
- heartbeat
- http
- http_poller
- imap
- irc
- java_generator
- java_stdin
- jdbc
- jms
- jmx
- kafka
- kinesis
- logstash
- log4j
- lumberjack
- meetup
- pipe
- puppet_facter
- rabbitmq
- redis
- relp
- rss
- s3
- s3-sns-sqs
- salesforce
- snmp
- snmptrap
- sqlite
- sqs
- stdin
- stomp
- syslog
- tcp
- udp
- unix
- varnishlog
- websocket
- wmi
- xmpp
- 输出插件
- boundary
- circonus
- cloudwatch
- csv
- datadog
- datadog_metrics
- dynatrace
- elastic_app_search
- elastic_workplace_search
- elasticsearch
- exec
- file
- ganglia
- gelf
- google_bigquery
- google_cloud_storage
- google_pubsub
- graphite
- graphtastic
- http
- influxdb
- irc
- java_stdout
- juggernaut
- kafka
- librato
- logstash
- loggly
- lumberjack
- metriccatcher
- mongodb
- nagios
- nagios_nsca
- opentsdb
- pagerduty
- pipe
- rabbitmq
- redis
- redmine
- riak
- riemann
- s3
- sink
- sns
- solr_http
- sqs
- statsd
- stdout
- stomp
- syslog
- tcp
- timber
- udp
- webhdfs
- websocket
- xmpp
- zabbix
- 过滤器插件
- age
- aggregate
- alter
- bytes
- cidr
- cipher
- clone
- csv
- date
- de_dot
- dissect
- dns
- drop
- elapsed
- elastic_integration
- elasticsearch
- environment
- extractnumbers
- fingerprint
- geoip
- grok
- http
- i18n
- java_uuid
- jdbc_static
- jdbc_streaming
- json
- json_encode
- kv
- memcached
- metricize
- metrics
- mutate
- prune
- range
- ruby
- sleep
- split
- syslog_pri
- threats_classifier
- throttle
- tld
- translate
- truncate
- urldecode
- useragent
- uuid
- wurfl_device_detection
- xml
- 编解码器插件
- 技巧和最佳实践
- 故障排除
- 为 Logstash 做贡献
- 贡献 Java 插件
- 重大变更
- 发行说明
- Logstash 8.17.0 发行说明
- Logstash 8.16.1 发行说明
- Logstash 8.16.0 发行说明
- Logstash 8.15.4 发行说明
- Logstash 8.15.3 发行说明
- Logstash 8.15.2 发行说明
- Logstash 8.15.1 发行说明
- Logstash 8.15.0 发行说明
- Logstash 8.14.3 发行说明
- Logstash 8.14.2 发行说明
- Logstash 8.14.1 发行说明
- Logstash 8.14.0 发行说明
- Logstash 8.13.4 发行说明
- Logstash 8.13.3 发行说明
- Logstash 8.13.2 发行说明
- Logstash 8.13.1 发行说明
- Logstash 8.13.0 发行说明
- Logstash 8.12.2 发行说明
- Logstash 8.12.1 发行说明
- Logstash 8.12.0 发行说明
- Logstash 8.11.4 发行说明
- Logstash 8.11.3 发行说明
- Logstash 8.11.2 发行说明
- Logstash 8.11.1 发行说明
- Logstash 8.11.0 发行说明
- Logstash 8.10.4 发行说明
- Logstash 8.10.3 发行说明
- Logstash 8.10.2 发行说明
- Logstash 8.10.1 发行说明
- Logstash 8.10.0 发行说明
- Logstash 8.9.2 发行说明
- Logstash 8.9.1 发行说明
- Logstash 8.9.0 发行说明
- Logstash 8.8.2 发行说明
- Logstash 8.8.1 发行说明
- Logstash 8.8.0 发行说明
- Logstash 8.7.1 发行说明
- Logstash 8.7.0 发行说明
- Logstash 8.6.2 发行说明
- Logstash 8.6.1 发行说明
- Logstash 8.6.0 发行说明
- Logstash 8.5.3 发行说明
- Logstash 8.5.2 发行说明
- Logstash 8.5.1 发行说明
- Logstash 8.5.0 发行说明
- Logstash 8.4.2 发行说明
- Logstash 8.4.1 发行说明
- Logstash 8.4.0 发行说明
- Logstash 8.3.3 发行说明
- Logstash 8.3.2 发行说明
- Logstash 8.3.1 发行说明
- Logstash 8.3.0 发行说明
- Logstash 8.2.3 发行说明
- Logstash 8.2.2 发行说明
- Logstash 8.2.1 发行说明
- Logstash 8.2.0 发行说明
- Logstash 8.1.3 发行说明
- Logstash 8.1.2 发行说明
- Logstash 8.1.1 发行说明
- Logstash 8.1.0 发行说明
- Logstash 8.0.1 发行说明
- Logstash 8.0.0 发行说明
- Logstash 8.0.0-rc2 发行说明
- Logstash 8.0.0-rc1 发行说明
- Logstash 8.0.0-beta1 发行说明
- Logstash 8.0.0-alpha2 发行说明
- Logstash 8.0.0-alpha1 发行说明
Http 输出插件
编辑Http 输出插件
编辑- 插件版本:v5.7.1
- 发布日期:2024-11-18
- 更新日志
对于其他版本,请参阅版本化插件文档。
获取帮助
编辑有关插件的问题,请在Discuss论坛中开一个主题。对于错误或功能请求,请在Github中打开一个 issue。有关 Elastic 支持的插件列表,请参阅Elastic 支持矩阵。
描述
编辑此输出插件允许您将事件发送到通用的 HTTP(S) 端点。
此输出插件将并行执行最多 pool_max 个请求以提高性能。在调整此插件以获得最佳性能时,请考虑这一点。
此外,请注意,当使用并行执行时,不能保证事件的严格排序!
请注意,此 gem 尚不支持编解码器。目前请使用 format 选项。
重试策略
编辑此输出插件具有两个级别的重试:库级别和插件级别。
库级别重试
编辑库级别重试适用于与 IO 相关的故障。不可重试的错误包括 SSL 相关问题、无法解析的主机、连接问题以及在请求期间发生的 OS/JVM 级别的中断。
库级别重试的选项是
-
automatic_retries
。控制插件在库级别发生故障后应重试的次数。 -
retry_non_idempotent
。设置为false
时,将重试 GET、HEAD、PUT、DELETE、OPTIONS 和 TRACE 请求。
插件级别重试
编辑插件级别重试的选项是
-
retry_failed
。设置为true
时,对于retryable_codes
选项中定义的 HTTP 错误响应代码(429、500、502、503、504)和可重试的异常(套接字超时/错误、DNS 解析失败和客户端协议异常),插件将无限期重试。 -
retryable_codes
。设置触发重试的 http 响应代码。
retry_failed
选项不控制库级别重试。
Http 输出配置选项
编辑此插件支持以下配置选项,以及稍后描述的通用选项。
设置 | 输入类型 | 必需 |
---|---|---|
否 |
||
有效的 文件系统路径 |
已弃用 |
|
有效的 文件系统路径 |
已弃用 |
|
有效的 文件系统路径 |
已弃用 |
|
否 |
||
否 |
||
否 |
||
否 |
||
字符串,可以是 |
否 |
|
否 |
||
否 |
||
字符串,可以是 |
是 |
|
否 |
||
否 |
||
有效的 文件系统路径 |
已弃用 |
|
已弃用 |
||
已弃用 |
||
否 |
||
否 |
||
否 |
||
否 |
||
<<,>> |
否 |
|
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
路径列表 |
否 |
|
字符串列表 |
否 |
|
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
否 |
||
字符串,可以是 |
否 |
|
有效的 文件系统路径 |
已弃用 |
|
已弃用 |
||
已弃用 |
||
是 |
||
否 |
另请参阅通用选项,以获取所有输出插件支持的选项列表。
automatic_retries
编辑- 值类型为数字
- 默认值为
1
客户端应重试失败的 URL 的次数。如果启用了keepalive
选项,我们建议将此选项设置为零以外的值。某些服务器错误地提前结束了 keepalive,需要重试。有关更多信息,请参阅重试策略。
client_cert
编辑在 5.6.0 中已弃用。
由 ssl_certificate
替换
- 值类型为路径
- 此设置没有默认值。
如果您想使用客户端证书(请注意,大多数人不需要此证书),请在此处设置 x509 证书的路径
content_type
编辑- 值类型为字符串
- 此设置没有默认值。
内容类型
如果未指定,则默认为以下内容
- 如果 format 为 “json”,则为 “application/json”
- 如果 format 为 “json_batch”,则为 “application/json”。每个 Logstash 事件批次将连接成一个数组,并在一个请求中发送。
- 如果 format 为 “form”,则为 “application/x-www-form-urlencoded”
format
编辑- 值可以是以下任意一个:
json
、json_batch
、form
、message
- 默认值为
"json"
设置 http 主体的格式。
如果为 json_batch,则此输出接收的每个事件批次都将放入一个 JSON 数组中,并在一个请求中发送。这对于高吞吐量场景(例如在 Logstash 实例之间发送数据)特别有用。
如果为 form,则主体将是将映射(或整个事件)转换为查询参数字符串,例如 foo=bar&baz=fizz...
如果为 message,则主体将是根据消息格式化事件的结果
否则,该事件将作为 json 发送。
http_method
编辑- 这是一个必需的设置。
- 值可以是以下任意一个:
put
、post
、patch
、delete
、get
、head
- 此设置没有默认值。
HTTP 动词。可以是 "put"、"post"、"patch"、"delete"、"get"、"head" 中的一个
keepalive
编辑- 值类型为布尔值
- 默认值为
true
启用此功能可启用 HTTP keepalive 支持。我们强烈建议将 automatic_retries
设置为至少 1,以修复与损坏的 keepalive 实现的交互。
keystore
编辑在 5.6.0 中已弃用。
由 ssl_keystore_path
替换
- 值类型为路径
- 此设置没有默认值。
如果您需要使用自定义密钥库 (.jks
),请在此处指定。这不适用于 .pem 密钥!
keystore_type
编辑在 5.6.0 中已弃用。
已替换为 ssl_keystore_type
- 值类型为字符串
- 默认值为
"JKS"
在此处指定密钥库类型。可以是 JKS
或 PKCS12
之一。默认为 JKS
mapping
编辑- 值类型为哈希
- 此设置没有默认值。
此选项允许您选择发送的事件的结构和部分。
例如
mapping => {"foo" => "%{host}" "bar" => "%{type}"}
proxy
编辑- 值类型为字符串
- 此设置没有默认值。
如果您想使用 HTTP 代理。此选项支持多种配置语法。
- 代理主机格式:
http://proxy.org:1234
- 代理主机格式:
{host => "proxy.org", port => 80, scheme => 'http', user => 'username@host', password => 'password'}
- 代理主机格式:
{url => 'http://proxy.org:1234', user => 'username@host', password => 'password'}
request_timeout
编辑- 值类型为数字
- 默认值为
60
此模块可以轻松地为 Logstash 添加一个基于 [Manticore](https://github.com/cheald/manticore) 的配置完整的 HTTP 客户端。有关其用法的示例,请参阅 https://github.com/logstash-plugins/logstash-input-http_poller。整个请求的超时时间(以秒为单位)
retry_failed
编辑- 值类型为布尔值
- 默认值为
true
请注意,此选项仅控制插件级别的重试。它对库级别的重试没有影响。
如果您想禁用对 retryable_codes
中定义的 HTTP 错误响应代码或可重试的异常(Timeout、SocketException、ClientProtocolException、ResolutionFailure 和 SocketTimeout)的无限次重试,请将此选项设置为 false
。有关更多信息,请参阅 重试策略。
retry_non_idempotent
编辑- 值类型为布尔值
- 默认值为
false
当此选项设置为 false
且 automatic_retries
启用时,将重试 GET、HEAD、PUT、DELETE、OPTIONS 和 TRACE 请求。
当设置为 true
且 automatic_retries
启用时,这将导致重试非幂等的 HTTP 动词(例如 POST)。有关更多信息,请参阅 重试策略。
ssl_certificate
编辑- 值类型为路径
- 此设置没有默认值。
用于验证客户端身份的 SSL 证书。此证书应为 OpenSSL 风格的 X.509 证书文件。
仅当设置了 ssl_key
时才能使用此设置。
ssl_key
编辑- 值类型为路径
- 此设置没有默认值。
与 ssl_certificate
对应的 OpenSSL 风格的 RSA 私钥。
仅当设置了 ssl_certificate
时才能使用此设置。
ssl_supported_protocols
编辑- 值类型为字符串
- 允许的值为:
'TLSv1.1'
,'TLSv1.2'
,'TLSv1.3'
- 默认值取决于使用的 JDK。对于最新的 Logstash,默认值为
['TLSv1.2', 'TLSv1.3']
。'TLSv1.1'
被认为是不安全的,仅用于旧应用程序。
在建立到 HTTP 端点的连接时要使用的允许的 SSL/TLS 版本列表。
对于 Java 8,仅自 8u262 (AdoptOpenJDK) 起才支持 'TLSv1.3'
,但需要在 Logstash 中设置 LS_JAVA_OPTS="-Djdk.tls.client.protocols=TLSv1.3"
系统属性。
如果在任何最近的 JVM(例如 Logstash 打包的 JVM)上配置插件以使用 'TLSv1.1'
,则默认情况下禁用该协议,并且需要通过更改 $JDK_HOME/conf/security/java.security 配置文件中的 jdk.tls.disabledAlgorithms
手动启用。也就是说,需要从列表中删除 TLSv1.1
。
ssl_verification_mode
编辑- 值类型为字符串
- 支持的值为:
full
,none
- 默认值为
full
控制服务器证书的验证。full
选项验证提供的证书是否由受信任的机构 (CA) 签名,并且服务器的主机名(或 IP 地址)是否与证书中标识的名称匹配。
none
设置对服务器的证书不执行任何验证。此模式禁用了 SSL/TLS 的许多安全优势,应在谨慎考虑后才能使用。它主要用作尝试解决 TLS 错误时的临时诊断机制。强烈建议不要在生产环境中使用 none
。
truststore
编辑在 5.6.0 中已弃用。
已替换为 ssl_truststore_path
- 值类型为路径
- 此设置没有默认值。
如果您需要使用自定义信任库 (.jks
),请在此处指定。这不适用于 .pem 证书!
truststore_type
编辑在 5.6.0 中已弃用。
已替换为 ssl_truststore_type
- 值类型为字符串
- 默认值为
"JKS"
在此处指定信任库类型。可以是 JKS
或 PKCS12
之一。默认为 JKS
On this page
- 获取帮助
- 描述
- 重试策略
- 库级别重试
- 插件级别重试
- Http 输出配置选项
automatic_retries
cacert
client_cert
client_key
connect_timeout
content_type
cookies
follow_redirects
format
headers
http_compression
http_method
ignorable_codes
keepalive
keystore
keystore_password
keystore_type
mapping
message
pool_max
pool_max_per_route
proxy
request_timeout
retry_failed
retry_non_idempotent
retryable_codes
socket_timeout
ssl_certificate
ssl_certificate_authorities
ssl_cipher_suites
ssl_enabled
ssl_key
ssl_keystore_password
ssl_keystore_path
ssl_keystore_type
ssl_supported_protocols
ssl_truststore_password
ssl_truststore_path
ssl_truststore_type
ssl_verification_mode
truststore
truststore_password
truststore_type
url
validate_after_inactivity
- 通用选项
codec
enable_metric
id