首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用程序洞察和kubernetes:如何不将成功的/liveness和/hc探测记录到跟踪日志

应用程序洞察和kubernetes:如何不将成功的/liveness和/hc探测记录到跟踪日志
EN

Stack Overflow用户
提问于 2020-09-25 20:20:25
回答 1查看 235关注 0票数 2

我已经使用kubernetes在Azure中部署了一个aspnetcore项目。

我正在使用Application Insights,我不想收到数以千计有关成功活跃度和就绪性的消息(

来自kubernetes的探测。

是否可以对其进行过滤?

文件服务器基于

ITelemetryProcessor

我已经这么做了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-25 20:43:23

在活动和就绪探测器的配置中,您可以指定与请求一起发送的自定义标头,例如

代码语言:javascript
复制
livenessProbe:
            httpGet:
              path: /api/health
              port: http
              httpHeaders:
              - name: HealthProbe-Type
                value: Liveness
          readinessProbe:
            httpGet:
              path: /api/health
              port: http
              httpHeaders:
              - name: HealthProbe-Type
                value: Readiness

然后,您可以在您的实现中基于该标头进行过滤。

代码语言:javascript
复制
public class HealthProbeTelemetryProcessor : ITelemetryProcessor
    {
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly ITelemetryProcessor _nextProcessor;
        public static string HealthProbeHeaderName => "HealthProbe-Type";

        public HealthProbeTelemetryProcessor(IHttpContextAccessor httpContextAccessor, ITelemetryProcessor nextProcessor)
        {
            _httpContextAccessor = httpContextAccessor;
            _nextProcessor = nextProcessor;
        }

        public void Process(ITelemetry item)
        {
            if (item == null) throw new ArgumentNullException(nameof(item));

            if (!string.IsNullOrWhiteSpace(item.Context.Operation.SyntheticSource))
                return;

            var isNotRequestTelemetry = !(item is RequestTelemetry);
            
            if ((isNotRequestTelemetry || _httpContextAccessor.HttpContext == null || !(_httpContextAccessor.HttpContext.Request?.Headers.ContainsKey(HealthProbeHeaderName)).GetValueOrDefault()))
                _nextProcessor.Process(item);
        }
    }
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64064041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档