logging - 处理重写规则后的 Haproxy 记录最终路径
问题描述
在 Haproxy 1.8.8 中,我试图记录最终的 URI(不是在前端收到的传入 URI),在后端部分,我有代理重写规则来更改路径。我希望新路径出现在 haproxy 日志中。这是示例 haproxy 配置文件,我想在日志/defgh/v1/newpath
中的某处记录。默认情况下,http log-format 仅捕获请求 URI,在下面的示例中它将用于/abc/oldpath
。任何人都可以建议在处理重写规则后如何捕获最终路径
示例 haproxy 配置
frontend http-in
option httplog
bind *:80
acl url_oldpath path_beg /abc/oldpath
use_backend servers if url_oldpath
backend servers
reqirep ^([^\ ]*)\ /abc/oldpath(.*) \1\ /defgh/v1/newpath\2
server server1 myServerIP:80
解决方案
您无法在 HAProxy 中记录响应路径:
http mode only | %HP | HTTP request URI without query string (path) | string
只有请求路径可用于记录。请参阅HAProxy 文档中可记录的字段。
您的后端服务器是否能够在收到请求时记录它们?您可以在那里看到受重写影响的最终路径。
推荐阅读
- python-3.x - 我对这个 Python 脚本做错了什么?
- linux - 无法统计,没有这样的文件或目录 linux
- c# - C# AES 加密字节数组
- css - v-for 类相互渲染
- javascript - 用 jQuery 包装元素(和元素数组)
- java - 整数处理
- ubuntu - 每天在不同网络上的多台计算机上自动同步特定目录
- xamarin.forms - 为十进制值设置全局cultureinfo
- google-analytics - 在 Google Tag Manager 中将数据推送到 dataLayer 并同时发送到 Google Analytics
- java - Android 6 上的密钥库崩溃