mirror of
https://github.com/PepperDash/PepperDashCore.git
synced 2026-01-11 19:44:44 +00:00
feat: exposes methods to control wssv
This commit is contained in:
@@ -109,9 +109,9 @@ namespace PepperDash.Core
|
|||||||
|
|
||||||
// Instantiate the root logger
|
// Instantiate the root logger
|
||||||
_logger = new LoggerConfiguration()
|
_logger = new LoggerConfiguration()
|
||||||
.WriteTo.Logger(lc => lc
|
//.WriteTo.Logger(lc => lc
|
||||||
.WriteTo.Console(levelSwitch: _consoleLoggingLevelSwitch))
|
//.WriteTo.Console(levelSwitch: _consoleLoggingLevelSwitch))
|
||||||
.WriteTo.Sink(new DebugWebsocketSink(), levelSwitch: _websocketLoggingLevelSwitch)
|
.WriteTo.Sink(new DebugWebsocketSink(), levelSwitch: _websocketLoggingLevelSwitch)
|
||||||
.WriteTo.File(@"\user\debug\global-log-{Date}.txt"
|
.WriteTo.File(@"\user\debug\global-log-{Date}.txt"
|
||||||
, rollingInterval: RollingInterval.Day
|
, rollingInterval: RollingInterval.Day
|
||||||
, restrictedToMinimumLevel: Serilog.Events.LogEventLevel.Debug)
|
, restrictedToMinimumLevel: Serilog.Events.LogEventLevel.Debug)
|
||||||
@@ -218,7 +218,7 @@ namespace PepperDash.Core
|
|||||||
|
|
||||||
if (programEventType == eProgramStatusEventType.Stopping)
|
if (programEventType == eProgramStatusEventType.Stopping)
|
||||||
{
|
{
|
||||||
//_logger.CloseAndFlush();
|
Log.CloseAndFlush();
|
||||||
|
|
||||||
if (_saveTimer != null)
|
if (_saveTimer != null)
|
||||||
{
|
{
|
||||||
@@ -370,9 +370,12 @@ namespace PepperDash.Core
|
|||||||
/// <param name="level"> Valid values 0 (no debug), 1 (critical), 2 (all messages)</param>
|
/// <param name="level"> Valid values 0 (no debug), 1 (critical), 2 (all messages)</param>
|
||||||
public static void SetDebugLevel(int level)
|
public static void SetDebugLevel(int level)
|
||||||
{
|
{
|
||||||
if (level <= 2)
|
_consoleLoggingLevelSwitch.MinimumLevel = (LogEventLevel)level;
|
||||||
|
|
||||||
|
if (level <= 5)
|
||||||
{
|
{
|
||||||
Level = level;
|
Level = level;
|
||||||
|
|
||||||
_contexts.GetOrCreateItem("DEFAULT").Level = level;
|
_contexts.GetOrCreateItem("DEFAULT").Level = level;
|
||||||
SaveMemoryOnTimeout();
|
SaveMemoryOnTimeout();
|
||||||
|
|
||||||
|
|||||||
@@ -13,20 +13,33 @@ namespace PepperDash.Core
|
|||||||
{
|
{
|
||||||
public class DebugWebsocketSink : ILogEventSink
|
public class DebugWebsocketSink : ILogEventSink
|
||||||
{
|
{
|
||||||
public WebSocketServer WSSV { get; private set; }
|
private WebSocketServer _wssv { get; private set; }
|
||||||
|
|
||||||
private readonly IFormatProvider _formatProvider;
|
private readonly IFormatProvider _formatProvider;
|
||||||
|
|
||||||
public DebugWebsocketSink()
|
public DebugWebsocketSink()
|
||||||
{
|
{
|
||||||
WSSV = new WebSocketServer();
|
_wssv = new WebSocketServer();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Emit(LogEvent logEvent)
|
public void Emit(LogEvent logEvent)
|
||||||
{
|
{
|
||||||
|
if (_wssv == null || !_wssv.IsListening) return;
|
||||||
|
|
||||||
var message = logEvent.RenderMessage(_formatProvider);
|
var message = logEvent.RenderMessage(_formatProvider);
|
||||||
WSSV.WebSocketServices.Broadcast(message);
|
_wssv.WebSocketServices.Broadcast(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StartServerAndSetPort(int port)
|
||||||
|
{
|
||||||
|
_wssv = new WebSocketServer(port);
|
||||||
|
_wssv.Start();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void StopServer()
|
||||||
|
{
|
||||||
|
_wssv.Stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user