簡體   English   中英

如何在沒有終端控制字符的情況下從 Azure API 管理自托管網關登錄?

[英]How to log from Azure API Mangement Self Hosted Gateway without terminal control characters?

我正在使用 Azure API 管理的自托管網關選項,並在 AWS ECS 中運行容器,我們將標准輸出捕獲到 Cloudwatch。

我們已經設置了telemetry.logs.std=json但 output 在 AWS Cloudwatch 中是這樣捕獲的:

[37m{"level":"Informational","timestamp":"...."}[0m

每行開頭和結尾的控制字符使得無法使用例如 Metric Filters 解析 JSON output。

我們如何防止容器將這些控制字符打印到標准輸出?

似乎有一個未記錄的功能可以從 Azure API 管理自托管網關容器中禁用顏色 output。 將此 env-var 添加到您的容器中:

telemetry.logs.std.color=false

我通過我發現支持禁用顏色 output 的舵圖弄清楚了。 那里的自述文件中記錄了它,但這還不是確切的 env-var 名稱。 我查看了為 helm 圖表添加支持的提交,以找出我需要使用的 env-var。 它似乎是最近添加的,所以也許這就是它尚未出現在官方文檔中的原因。 我只使用最新版本的 SHG 映像(我需要更新我們的容器才能使其工作)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM