The Autodesk Revit enrichers for Serilog
MIT License
The Autodesk Revit enrichers for Serilog.
Install the Serilog.Enrichers.Autodesk.Revit package from NuGet:
Install-Package Serilog.Enrichers.Autodesk.Revit
Then, apply the enricher to you LoggerConfiguration
:
// IExternalCommand.Execute
public Result Execute(ExternalCommandData commandData,
out string message,
ElementSet elements) {
UIApplication uiApplication = commandData.Application;
var log = new LoggerConfiguration()
.Enrich.WithRevitVersion(uiApplication)
// other enrichers..
.CreateLogger();
}
// IExternalApplication.Execute
public Result OnStartup(UIControlledApplication application) {
var log = new LoggerConfiguration()
.Enrich.WithRevitVersion(application)
// other enrichers...
.CreateLogger();
}
The package includes:
WithRevitVersion()
- adds Application.VersionNumber
or ControlledApplication.VersionNumber
WithRevitBuild()
- adds Application.VersionBuild
or ControlledApplication.VersionBuild
WithRevitUserName()
- adds Application.Username
or ControlledApplication.Username
WithRevitLanguage()
- adds Application.Language
or ControlledApplication.Language
WithRevitDocumentTitle()
- adds Document.Title
WithRevitDocumentPathName()
- adds Document.PathName
WithRevitDocumentModelPath()
- adds Document.GetCloudModelPath()
if Document.IsModelInCloud
is true
or Document.GetWorksharingCentralModelPath()
if Document.IsWorkshared
is true
WithRevitAddinId()
- adds Application.ActiveAddinId