Cloud Foundry - 在日志中合并应用 URI



我们正在Cloud Foundry中记录到splunk(通过logreggator(。我们通过 slf4j 使用 log4j2。

我们已经在 log4j2 配置中指定了实例 UID 和索引:

<Console ...>
...
<KeyValuePair key="@instanceGUID" value="${env:CF_INSTANCE_GUID:-unknown}" />
...
</Console>

有没有办法为空间/路线/池做类似的事情? 理想情况下,我们希望能够包含具有dev,qa,uat等值的@space...和池:EMEA1,GB2等...

在最基本的情况下,捕获日志中的路由就足够了。

任何指示赞赏。

您可以从VCAP_APPLICATION中提取空间名称。例如:echo $VCAP_APPLICATION | jq .space_name.

您也可以获取 URI/路由,但可能有多个,所以我不确定您要记录的内容。例如:echo $VCAP_APPLICATION | jq '.uris | first'会给你第一个。如果您没有将多个路由绑定到您的应用程序,也许这已经足够好了......

我不知道你说的游泳池是什么意思。如果你指的是细胞,我不知道有什么办法可以得到它。你能做的最好的事情就是细胞的IP,这是CF_INSTANCE_IP

您也可以始终添加自己的 env 变量,以将更多信息合并到日志中。

希望对您有所帮助!