Как использовать loggly в LocalSystem Service? - PullRequest
0 голосов
/ 17 октября 2018

У меня есть служба LocalSystem под названием «CameraManagerService», определенная следующим образом:

public partial class CameraManagerService : ServiceBase
{
    private ServiceHost serviceHost = null;

    public ESCCameraManagerService()
    {
        InitializeComponent();
        ServiceName = "CameraManagerService";
    }

    protected override void OnStart(string[] args)
    {
        if (serviceHost != null)
        {
            serviceHost.Close();
        }
        serviceHost = new ServiceHost(typeof(CameraManager));
        serviceHost.Open();
    }

    protected override void OnStop()
    {
        if (serviceHost != null)
        {
            serviceHost.Close();
            serviceHost = null;
        }
    }

, и файл App.config, который идет с ней, определен следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="log4net" 
    type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>

<appSettings>
  <add key="AppName" value="CameraService" />
  <add key="LogglyToken" value="56c1671c-5585-1672-9d9e-4f913346671e" />
  <add key="LogglyTag" value="log4net" />
  <add key="LogglyRootUrl" value="https://logs-01.loggly.com/" />
</appSettings>

<log4net>
<root>
  <level value="ALL" />
  <appender-ref ref="LogglyAppender" />
  <appender-ref ref="LogFileAppender" />
</root>
<appender name="LogglyAppender" type="log4net.loggly.LogglyAppender, log4net-loggly">
  <rootUrl value="https://logs-01.loggly.com/" />
  <inputKey value="56c1671c-5585-1672-9d9e-4f913346671e" />
  <tag value="log4net" />
</appender>
<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
  <param name="File" value="C:\ESC3-Logs\Logs_CameraService.json" />
  <param name="AppendToFile" value="true" />
  <rollingStyle value="Size" />
  <maxSizeRollBackups value="10" />
  <maximumFileSize value="10MB" />
  <staticLogFileName value="true" />
  <layout type="log4net.Layout.SerializedLayout, log4net.Ext.Json">
    <decorator type="log4net.Layout.Decorators.StandardTypesDecorator, log4net.Ext.Json" />
    <default />
    <remove value="message" />
    <arrangement value="Post:messageobject" />
    <arrangement value="Host=Name:hostname" />
    <member value="" />
  </layout>
</appender>
</log4net>

IЯ скачал слепки пакетов log4net, log4net.Ext.json и log4net-loggly.

У меня нет проблем при входе в файл

"C: \ ESC3-Logs \ Logs_CameraService.json "

Но я не вижу свои логи в loggly.

У меня такая же конфигурация логов для других проектов, которые не являются сервисами, и я могу использовать loggly без проблем.

Есть ли что-то еще, чтобы войти за пределы моей локальной системы при попытке войти в службу?

...