diff --git a/src/Pepperdash Core/Logging/CrestronEnricher.cs b/src/Pepperdash Core/Logging/CrestronEnricher.cs new file mode 100644 index 0000000..623530e --- /dev/null +++ b/src/Pepperdash Core/Logging/CrestronEnricher.cs @@ -0,0 +1,38 @@ +using Crestron.SimplSharp; +using Serilog.Core; +using Serilog.Events; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PepperDash.Core.Logging +{ + public class CrestronEnricher : ILogEventEnricher + { + static readonly string _appName; + + static CrestronEnricher() + { + if(CrestronEnvironment.DevicePlatform == eDevicePlatform.Appliance) + { + _appName = $"App {InitialParametersClass.ApplicationNumber}"; + return; + } + + if(CrestronEnvironment.DevicePlatform == eDevicePlatform.Server) + { + _appName = $"Room {InitialParametersClass.RoomId}"; + } + } + + + public void Enrich(LogEvent logEvent, ILogEventPropertyFactory propertyFactory) + { + var property = propertyFactory.CreateProperty("App", _appName); + + logEvent.AddOrUpdateProperty(property); + } + } +}