using NLog;
using Sentry;

namespace HRD.AppLogger
{
    public class NlogSentryConfig
    {
        public bool AttachStacktrace { get; set; } = false;
        public string Dsn { get; set; }

        //
        // Summary:
        //     Determines whether or not to include event-level data as data in breadcrumbs
        //     for future errors. Defaults to false.
        public bool IncludeEventDataOnBreadcrumbs { get; set; } = false;

        //     Minimum log level to be included in the breadcrumb. Defaults to LogLevel.Info.
        public LogLevel MinimumBreadcrumbLevel { get; set; } = LogLevel.Warn;

        //
        // Summary:
        //     Minimum log level for events to trigger a send to Sentry. Defaults to LogLevel.Error.
        public LogLevel MinimumEventLevel { get; set; } = LogLevel.Warn;

        public bool NlogSentryIsEnable { get; set; }
        public bool SendDefaultPii { get; set; } = false;
        public User? SentryUser { get; set; }
    }
}