elasti c apm для c# рабочих мест - PullRequest
0 голосов
/ 06 апреля 2020

Я добавляю ElasticAPM к своему запуску на AspNetCore 3.1

app.UseAllElasticApm(Configuration);

в моем проекте, остальные журналы API служб в качестве вкладки транзакций kibana-apm. но мои фоновые сервисы не регистрируются агентом apm и только вкладка метрик работает для меня.

1 Ответ

0 голосов
/ 06 апреля 2020

В настоящее время фоновые сервисы не собираются из коробки.

Что вы можете сделать, это использовать Publi c Агент API , и с небольшим количеством дополнительного кода вы можете захватывать их также как транзакции.

Что-то вроде этого в фоновом сервисе:

var transaction = Elastic.Apm.Agent
        .Tracer.StartTransaction("MyTransaction", ApiConstants.TypeRequest);
try
{
    //background service code that is captured as a transaction
}
catch (Exception e)
{
    transaction?.CaptureException(e);
    throw;
}
finally
{
    transaction?.End();
}
...