.net Framework 4.7.2 기반의 datadog DLL을 만들려합니다.

안녕하세요. 질문드릴 것이 있어 처음으로 글을 올립니다.

현재 C# / .net Framework 4.7.2 기반의 Dd(Datadog)을 log collection으로 사용을 목적으로하는 로컬 DLL을 만들려고 합니다.
그로 인하여 서칭을 하는 도중에 데이터독 DOCS쪽에는 윈도우 서버 또는 웹기반(.NET6 또는 ASP .NET등)에서만 연동되는 예제들이 나열되어있더라고요.

혹시 데이터독은 Sentry처럼 윈도우 native client에서 에러로그를 바로 전송해주는 역할을 하진 못하는 걸까요?

해당 DLL은 wpf 또는 winform 프로그램들과 연동하여 로그들을 서버로 전송하는 브릿지역할을 하도록 하려합니다.

혹시 datadog 연동에 대한 경험을 해보셨던 native 개발자분이 계시다면 답변 꼭 부탁드리겠습니다!!

1개의 좋아요

datadog 에 로깅을 하는 목적이시라면 웹 기반 아니더라도 아래 예제처럼
serilog에 datadog sink를 연결하고 datadog agent 없이 직접 서버에 전송하는 방식으로 로깅이 가능해 보입니다.

Agentless logging with APM

주요 절차는 아래와 같습니다.
참조해주세요~

패키지 설치

Install-Package Serilog.Sinks.Datadog.Logs

예제 코드

var config = new DatadogConfiguration(url: "intake.logs.datadoghq.com", port: 10516, useSSL: true, useTCP: true);
using (var log = new LoggerConfiguration()
    .WriteTo.DatadogLogs(
        "<API_KEY>",
        source: "<SOURCE_NAME>",
        service: "<SERVICE_NAME>",
        host: "<HOST_NAME>",
        tags: new string[] {"<TAG_1>:<VALUE_1>", "<TAG_2>:<VALUE_2>"},
        configuration: config
    )
    .CreateLogger())
{
    // Some code
}

필수 값들을 설정하시고 Some code에서 로깅해 보시면 되겠네요.

7개의 좋아요

데이터독에 작성되어있는 샘플코드로 상기와 같이 진행했을때는 처리가 안되더군요 ㅠㅠ api key 및 소스, 서비스, 호스트네임 등 정상적으로 작성하여도 익스플로어에 다른것처럼 나타나지 않아 일단 임시로 curl로 처리하였습니다 ㅠㅠ

답변 감사합니다 …! 혹시나 상기 샘플코드로 작성하여 데이터독에 넘어오셨었는지도 궁금합니다

2개의 좋아요