Exemplo n.º 1
0
        /// <summary>
        /// Fixed:
        /// </summary>
        private void SetProperties()
        {
            SysLogType  = SysLogModel.SysLogTypes.Info;
            OnAzure     = Environments.RdsProvider == "Azure";
            MachineName = Environments.MachineName;
            ServiceName = Environments.ServiceName;
            Application = Environments.Application;
            var request = new Request(System.Web.HttpContext.Current);

            if (request.HttpRequest != null)
            {
                RequestData                = request.ProcessedRequestData();
                HttpMethod                 = request.HttpMethod();
                ApplicationAge             = Applications.ApplicationAge();
                ApplicationRequestInterval = Applications.ApplicationRequestInterval();
                SessionAge                 = Sessions.SessionAge();
                SessionRequestInterval     = Sessions.SessionRequestInterval();
                RequestSize                = RequestData.Length;
                Url             = request.Url();
                UrlReferer      = request.UrlReferrer();
                UserHostName    = request.UserHostName();
                UserHostAddress = request.UserHostAddress();
                UserLanguage    = request.UserLanguage();
                UserAgent       = request.UserAgent();
                SessionGuid     = Sessions.SessionGuid();
            }
            InDebug         = Debugs.InDebug();
            AssemblyVersion = Environments.AssemblyVersion;
        }
Exemplo n.º 2
0
 /// <summary>
 /// Fixed:
 /// </summary>
 private void SetProperties(Context context)
 {
     SysLogType  = SysLogTypes.Info;
     OnAzure     = Environments.RdsProvider == "Azure";
     MachineName = Environments.MachineName;
     ServiceName = Environments.ServiceName;
     Application = Environments.Application;
     if (context.Url != null)
     {
         RequestData                = ProcessedRequestData(context: context);
         HttpMethod                 = context.HttpMethod;
         ApplicationAge             = Applications.ApplicationAge();
         ApplicationRequestInterval = Applications.ApplicationRequestInterval();
         SessionAge                 = context.SessionAge();
         SessionRequestInterval     = context.SessionRequestInterval();
         RequestSize                = RequestData.Length;
         Url             = context.Url;
         UrlReferer      = context.UrlReferrer;
         UserHostName    = context.UserHostName;
         UserHostAddress = context.UserHostAddress;
         UserLanguage    = context.Language;
         UserAgent       = context.UserAgent;
         SessionGuid     = context.SessionGuid;
     }
     InDebug         = Debugs.InDebug();
     AssemblyVersion = Environments.AssemblyVersion;
 }
        /// <summary>
        /// Fixed:
        /// </summary>
        public SysLogModel(
            Context context,
            string method,
            string message,
            string errStackTrace   = null,
            SysLogTypes sysLogType = SysLogTypes.Info)
        {
            Class  = context.Controller;
            Method = $"{context.Action}:{method}";
            switch (sysLogType)
            {
            case SysLogTypes.SystemError:
            case SysLogTypes.Execption:
                ErrMessage = message;
                break;

            default:
                Comments = new Comments()
                {
                    new Comment()
                    {
                        Body = message
                    }
                };
                break;
            }
            ErrStackTrace = errStackTrace;
            WriteSysLog(
                context: context,
                sysLogType: sysLogType);
        }
Exemplo n.º 4
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public SysLogModel(System.Web.Mvc.ExceptionContext filterContext)
 {
     Class  = Routes.Controller();
     Method = Routes.Action();
     WriteSysLog();
     SysLogType    = SysLogTypes.Execption;
     ErrMessage    = filterContext.Exception.Message;
     ErrStackTrace = filterContext.Exception.StackTrace;
     Finish();
 }
Exemplo n.º 5
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public SysLogModel(Microsoft.AspNetCore.Mvc.Filters.ExceptionContext filterContext)
 {
     Class  = Routes.Controller();
     Method = Routes.Action();
     WriteSysLog();
     SysLogType    = SysLogTypes.Execption;
     ErrMessage    = filterContext.Exception.Message;
     ErrStackTrace = filterContext.Exception.StackTrace;
     Finish();
 }
Exemplo n.º 6
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public SysLogModel(Context context, System.Web.Mvc.ExceptionContext filterContext)
 {
     Class  = context.Controller;
     Method = context.Action;
     WriteSysLog(context: context);
     SysLogType    = SysLogTypes.Execption;
     ErrMessage    = filterContext.Exception.Message;
     ErrStackTrace = filterContext.Exception.StackTrace;
     Finish(context: context);
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public SysLogModel(IContext context, string exceptionMessage, string exceptionStackTrace)
 {
     Class  = context.Controller;
     Method = context.Action;
     WriteSysLog(context: context);
     SysLogType    = SysLogTypes.Execption;
     ErrMessage    = exceptionMessage;
     ErrStackTrace = exceptionStackTrace;
     Finish(context: context);
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public void WriteSysLog(
     Context context,
     SysLogTypes sysLogType)
 {
     StartTime = DateTime.Now;
     SetProperties(
         context: context,
         sysLogType: sysLogType);
     if (Parameters.SysLog.NotLoggingIp?.Contains(UserHostAddress) != true)
     {
         SysLogId = Repository.ExecuteScalar_response(
             context: context,
             selectIdentity: true,
             statements: Rds.InsertSysLogs(
                 selectIdentity: true,
                 param: SysLogParam(context: context)))
                    .Id.ToLong();
     }
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public SysLogModel(
     Context context,
     Exception e,
     string extendedErrorMessage = null,
     Logs logs = null,
     SysLogTypes sysLogType = SysLogTypes.Execption)
 {
     Class      = context.Controller;
     Method     = context.Action;
     ErrMessage = e.Message
                  + (extendedErrorMessage != null
             ? "\n" + extendedErrorMessage
             : string.Empty)
                  + (logs?.Any() == true
             ? "\n" + logs.Select(o => o.Name + ": " + o.Value).Join("\n")
             : string.Empty);
     ErrStackTrace = e.StackTrace;
     WriteSysLog(
         context: context,
         sysLogType: sysLogType);
 }
Exemplo n.º 10
0
        private void Set(DataRow dataRow, string tableAlias = null)
        {
            AccessStatus = Databases.AccessStatuses.Selected;
            foreach (DataColumn dataColumn in dataRow.Table.Columns)
            {
                var column = new ColumnNameInfo(dataColumn.ColumnName);
                if (column.TableAlias == tableAlias)
                {
                    switch (column.Name)
                    {
                    case "CreatedTime":
                        if (dataRow[column.ColumnName] != DBNull.Value)
                        {
                            CreatedTime      = new Time(dataRow, column.ColumnName);
                            SavedCreatedTime = CreatedTime.Value;
                        }
                        break;

                    case "SysLogId":
                        if (dataRow[column.ColumnName] != DBNull.Value)
                        {
                            SysLogId      = dataRow[column.ColumnName].ToLong();
                            SavedSysLogId = SysLogId;
                        }
                        break;

                    case "Ver":
                        Ver      = dataRow[column.ColumnName].ToInt();
                        SavedVer = Ver;
                        break;

                    case "SysLogType":
                        SysLogType      = (SysLogTypes)dataRow[column.ColumnName].ToInt();
                        SavedSysLogType = SysLogType.ToInt();
                        break;

                    case "OnAzure":
                        OnAzure      = dataRow[column.ColumnName].ToBool();
                        SavedOnAzure = OnAzure;
                        break;

                    case "MachineName":
                        MachineName      = dataRow[column.ColumnName].ToString();
                        SavedMachineName = MachineName;
                        break;

                    case "ServiceName":
                        ServiceName      = dataRow[column.ColumnName].ToString();
                        SavedServiceName = ServiceName;
                        break;

                    case "TenantName":
                        TenantName      = dataRow[column.ColumnName].ToString();
                        SavedTenantName = TenantName;
                        break;

                    case "Application":
                        Application      = dataRow[column.ColumnName].ToString();
                        SavedApplication = Application;
                        break;

                    case "Class":
                        Class      = dataRow[column.ColumnName].ToString();
                        SavedClass = Class;
                        break;

                    case "Method":
                        Method      = dataRow[column.ColumnName].ToString();
                        SavedMethod = Method;
                        break;

                    case "RequestData":
                        RequestData      = dataRow[column.ColumnName].ToString();
                        SavedRequestData = RequestData;
                        break;

                    case "HttpMethod":
                        HttpMethod      = dataRow[column.ColumnName].ToString();
                        SavedHttpMethod = HttpMethod;
                        break;

                    case "RequestSize":
                        RequestSize      = dataRow[column.ColumnName].ToInt();
                        SavedRequestSize = RequestSize;
                        break;

                    case "ResponseSize":
                        ResponseSize      = dataRow[column.ColumnName].ToInt();
                        SavedResponseSize = ResponseSize;
                        break;

                    case "Elapsed":
                        Elapsed      = dataRow[column.ColumnName].ToDouble();
                        SavedElapsed = Elapsed;
                        break;

                    case "ApplicationAge":
                        ApplicationAge      = dataRow[column.ColumnName].ToDouble();
                        SavedApplicationAge = ApplicationAge;
                        break;

                    case "ApplicationRequestInterval":
                        ApplicationRequestInterval      = dataRow[column.ColumnName].ToDouble();
                        SavedApplicationRequestInterval = ApplicationRequestInterval;
                        break;

                    case "SessionAge":
                        SessionAge      = dataRow[column.ColumnName].ToDouble();
                        SavedSessionAge = SessionAge;
                        break;

                    case "SessionRequestInterval":
                        SessionRequestInterval      = dataRow[column.ColumnName].ToDouble();
                        SavedSessionRequestInterval = SessionRequestInterval;
                        break;

                    case "WorkingSet64":
                        WorkingSet64      = dataRow[column.ColumnName].ToLong();
                        SavedWorkingSet64 = WorkingSet64;
                        break;

                    case "VirtualMemorySize64":
                        VirtualMemorySize64      = dataRow[column.ColumnName].ToLong();
                        SavedVirtualMemorySize64 = VirtualMemorySize64;
                        break;

                    case "ProcessId":
                        ProcessId      = dataRow[column.ColumnName].ToInt();
                        SavedProcessId = ProcessId;
                        break;

                    case "ProcessName":
                        ProcessName      = dataRow[column.ColumnName].ToString();
                        SavedProcessName = ProcessName;
                        break;

                    case "BasePriority":
                        BasePriority      = dataRow[column.ColumnName].ToInt();
                        SavedBasePriority = BasePriority;
                        break;

                    case "Url":
                        Url      = dataRow[column.ColumnName].ToString();
                        SavedUrl = Url;
                        break;

                    case "UrlReferer":
                        UrlReferer      = dataRow[column.ColumnName].ToString();
                        SavedUrlReferer = UrlReferer;
                        break;

                    case "UserHostName":
                        UserHostName      = dataRow[column.ColumnName].ToString();
                        SavedUserHostName = UserHostName;
                        break;

                    case "UserHostAddress":
                        UserHostAddress      = dataRow[column.ColumnName].ToString();
                        SavedUserHostAddress = UserHostAddress;
                        break;

                    case "UserLanguage":
                        UserLanguage      = dataRow[column.ColumnName].ToString();
                        SavedUserLanguage = UserLanguage;
                        break;

                    case "UserAgent":
                        UserAgent      = dataRow[column.ColumnName].ToString();
                        SavedUserAgent = UserAgent;
                        break;

                    case "SessionGuid":
                        SessionGuid      = dataRow[column.ColumnName].ToString();
                        SavedSessionGuid = SessionGuid;
                        break;

                    case "ErrMessage":
                        ErrMessage      = dataRow[column.ColumnName].ToString();
                        SavedErrMessage = ErrMessage;
                        break;

                    case "ErrStackTrace":
                        ErrStackTrace      = dataRow[column.ColumnName].ToString();
                        SavedErrStackTrace = ErrStackTrace;
                        break;

                    case "InDebug":
                        InDebug      = dataRow[column.ColumnName].ToBool();
                        SavedInDebug = InDebug;
                        break;

                    case "AssemblyVersion":
                        AssemblyVersion      = dataRow[column.ColumnName].ToString();
                        SavedAssemblyVersion = AssemblyVersion;
                        break;

                    case "Comments":
                        Comments      = dataRow[column.ColumnName].ToString().Deserialize <Comments>() ?? new Comments();
                        SavedComments = Comments.ToJson();
                        break;

                    case "Creator":
                        Creator      = SiteInfo.User(dataRow[column.ColumnName].ToInt());
                        SavedCreator = Creator.Id;
                        break;

                    case "Updator":
                        Updator      = SiteInfo.User(dataRow[column.ColumnName].ToInt());
                        SavedUpdator = Updator.Id;
                        break;

                    case "UpdatedTime":
                        UpdatedTime      = new Time(dataRow, column.ColumnName); Timestamp = dataRow.Field <DateTime>(column.ColumnName).ToString("yyyy/M/d H:m:s.fff");
                        SavedUpdatedTime = UpdatedTime.Value;
                        break;

                    case "IsHistory": VerType = dataRow[column.ColumnName].ToBool() ? Versions.VerTypes.History : Versions.VerTypes.Latest; break;
                    }
                }
            }
        }