Удалить источник события (ETW) без файла манифеста? - PullRequest
1 голос
/ 20 марта 2019

Каков наилучший способ удаления / удаления ранее установленных источников событий без использования манифеста?

Например.Если у меня есть что-то вроде:


    [EventSource(Name = "Corporation-Module-X")]
    public sealed class XEventSource : EventSource
    {
        //...
    }

Для установки источника событий я использую wevtutil {im |install-manifest}

Для удаления легко, если у меня есть манифест.Но могу ли я удалить источник события, не имея файла манифеста?


Я постараюсь уточнить, как я использую источники событий и почему я хотел бы удалить его.

После установки источника событияпри использовании wevtutil источник событий отображается как поставщик трассировки событий.Таким образом, я могу создать новый набор сборщиков данных в системном мониторе, где я добавляю свой источник событий (вместе с некоторыми счетчиками производительности).Это выглядит так:

ETW EventSource in new collector set

Что может произойти, если источник события будет переименован или удален.Например, после переименования и установки с помощью wevtutil.


    [EventSource(Name = "Corporation-Module-Y")]
    public sealed class XEventSource : EventSource
    {
        //...
    }

Старый еще есть в поставщиках трассировки событий:

ETW New event source

Что яхотел бы запросить все установленные поставщики событий, которые начинаются с Corporation *, и удалить их перед установкой нового.

enter image description here

Спасибо!

1 Ответ

1 голос
/ 20 марта 2019

Нет необходимости удалять что-либо, потому что манифест не зарегистрирован, если вы EventSource . Манифест отправляется Событие ManifestData

enter image description here

для инструмента слушателя (Perfview, Windows Performance Toolkit), чтобы они могли интерпретировать записанные данные.

Когда вы зарегистрировали провайдера, вы можете сбросить манифест и снова использовать wevtutil для его удаления.

...