http输出器

功能描述

HTTP输出器能够将程序运行中产生的日志内容会被封装成http请求发送至外部提供的网络接口。

OpenAPI配置日志

配置参数说明

参数名值类型是否必填值可能性默认值说明
namestring实例名
driverstringhttp_output驱动名
descriptionstring描述
scopes[]string作用域,此处填写access_log
methodstring["GET", "POST", "HEAD", "PUT", "DELETE", "CONNECT", "OPTIONS", "TRACE"]请求外部网络接口所使用的http方法
urlstring外部提供的网络接口的地址
headersobject请求的头部信息,可以填请求外部网络接口时需要提供的参数,如鉴权等信息
typestring["line","json"]lineformatter的类型
formatterobjectformatter的输出内容

注意

  • formatter的配置教程点此进行跳转

返回参数说明

参数名类型是否必含说明
idstring实例id
namestring实例名
driverstring驱动名
descriptionstring描述
professionstring模块名
createstring创建时间
updatestring更新时间
scopes[]string作用域
methodstring请求外部网络接口所使用的http方法
urlstring外部提供的网络接口的地址
headersobject请求的头部信息,可以填请求外部网络接口时需要提供的参数,如鉴权等信息
typestringformatter的类型
formatterobjectformatter的输出内容

创建HTTP输出器示例

curl -X POST  \
  'http://127.0.0.1:9400/api/output' \
  -H 'Content-Type:application/json' \
  -d '{
	"name": "demo_httplog",
	"driver": "http_output",
    "scopes": ["access_log"],
	"method": "POST",
	"url": "http://127.0.0.1:9090/log",
	"headers": {
		"token": "test"
	},
	"type": "line",
	"formatter": {
		"fields": ["$request_id", "$request", "$status", "@time", "@proxy", "$response_time"],
		"time": ["$msec", "$time_iso8601", "$time_local"],
		"proxy": ["$proxy_uri", "$proxy_scheme", "$proxy_addr"]
	}
}'

返回结果示例

{
	"create": "2022-06-14 15:40:42",
	"description": "",
	"driver": "http_output",
    "scopes": ["access_log"],
	"formatter": {
		"fields": ["$request_id", "$request", "$status", "@time", "@proxy", "$response_time"],
		"proxy": ["$proxy_uri", "$proxy_scheme", "$proxy_addr"],
		"time": ["$msec", "$time_iso8601", "$time_local"]
	},
	"headers": {
		"token": "test"
	},
	"id": "demo_httplog@output",
	"method": "POST",
	"name": "demo_httplog",
	"profession": "output",
	"type": "line",
	"update": "2022-06-14 15:40:42",
	"url": "http://127.0.0.1:9090/log"
}

HTTP输出器使用

HTTP输出器可用于access-log插件的日志输出,点此跳转至access-log插件。