forked from vectordotdev/vector
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathhttp.toml
More file actions
160 lines (136 loc) · 4.07 KB
/
Copy pathhttp.toml
File metadata and controls
160 lines (136 loc) · 4.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
[sinks.http]
title = "HTTP"
beta = false
common = true
delivery_guarantee = "at_least_once"
egress_method = "batching"
function_category = "transmit"
healthcheck = true
input_types = ["log"]
requirements = {}
write_to_description = "a generic HTTP endpoint"
<%= render("_partials/_component_options.toml", type: "sink", name: "http") %>
<%= render("_partials/_batch_options.toml", namespace: "sinks.http.options", common: true, max_events: nil, max_size: 1049000, timeout_secs: 1) %>
<%= render("_partials/_buffer_options.toml", namespace: "sinks.http.options") %>
<%= render(
"_partials/_request_options.toml",
namespace: "sinks.http.options",
common: true,
in_flight_limit: 10,
rate_limit_duration_secs: 1,
rate_limit_num: 1000,
retry_attempts: -1,
retry_initial_backoff_secs: 1,
retry_max_duration_secs: 10,
timeout_secs: 30
) %>
[sinks.http.options.auth]
type = "table"
common = false
description = "Options for the authentication strategy."
[sinks.http.options.auth.children.strategy]
type = "string"
required = true
sort = 1
description = "The authentication strategy to use."
[sinks.http.options.auth.children.strategy.enum]
basic = "The [basic authentication strategy][urls.basic_auth]."
[sinks.http.options.auth.children.password]
type = "string"
examples = ["${PASSWORD_ENV_VAR}", "password"]
required = true
relevant_when = {strategy = "basic"}
description = "The basic authentication password."
[sinks.http.options.auth.children.user]
type = "string"
examples = ["${USERNAME_ENV_VAR}", "username"]
required = true
relevant_when = {strategy = "basic"}
description = "The basic authentication user name."
[sinks.http.options.compression]
type = "string"
category = "requests"
common = true
default = "none"
description = """\
The compression strategy used to compress the encoded event data before \
outputting.\
"""
[sinks.http.options.compression.enum]
none = "The payload will not be compressed."
gzip = "The payload will be compressed in [Gzip][urls.gzip] format before being sent."
[sinks.http.options.encoding]
type = "string"
category = "requests"
common = true
required = true
description = """\
The encoding format used to serialize the events before outputting.\
"""
[sinks.http.options.encoding.enum]
json = "Each event is encoded into JSON and the payload is represented as a JSON array."
ndjson = "Each event is encoded into JSON and the payload is new line delimited."
text = "Each event is encoded into text via the `message` key and the payload is new line delimited."
[sinks.http.options.headers]
type = "table"
description = "Options for custom headers."
[sinks.http.options.headers.children."`[header-key]`"]
type = "string"
examples = [
{"Authorization" = "${TOKEN_ENV_VAR}"},
{"X-Powered-By" = "Vector"},
]
required = true
description = "A custom header to be added to each outgoing HTTP request."
[sinks.http.options.healthcheck_uri]
type = "string"
examples = ["https://10.22.212.22:9000/_health"]
description = "A URI that Vector can request in order to determine the service health."
<%= render("_partials/_tls_connector_options.toml", namespace: "sinks.http.options", can_enable: false, can_verify: true) %>
[sinks.http.options.uri]
type = "string"
common = true
examples = ["https://10.22.212.22:9000/endpoint"]
required = true
description = "The full URI to make HTTP requests to. This should include the protocol and host, but can also include the port, path, and any other valid part of a URI."
[[sinks.http.output.examples]]
label = "JSON"
body = """\
```http
POST <uri> HTTP/1.1
Host: <uri.host>
Content-Type: application/x-ndjson
Content-Length: <byte_size>
[
<json_encoded_log>,
<json_encoded_log>,
<json_encoded_log>,
]
```\
"""
[[sinks.http.output.examples]]
label = "NDJSON"
body = """\
```http
POST <uri> HTTP/1.1
Host: <uri.host>
Content-Type: application/x-ndjson
Content-Length: <byte_size>
<json_encoded_log>
<json_encoded_log>
<json_encoded_log>
```\
"""
[[sinks.http.output.examples]]
label = "Text"
body = """\
```http
POST <uri> HTTP/1.1
Host: <uri.host>
Content-Type: text/plain
Content-Length: <byte_size>
<log.message>
<log.message>
<log.message>
```\
"""