Exemplo n.º 1
0
        public DataTable getdb_branch(string SQL, string server, string userid, string password, string database)
        {
            string cs = @"server=" + server + ";userid=" + userid + ";password="******";database=" + database + ";Allow Zero Datetime=true;Charset = utf8;Connect Timeout=300;";

            MySqlConnection myconn = null;

            try
            {
                myconn = new MySqlConnection(cs);
                myconn.Open();
                DataTable    dataTable = new DataTable();
                MySqlCommand cmd       = new MySqlCommand(SQL, myconn);
                cmd.CommandTimeout = 300;
                using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
                {
                    da.Fill(dataTable);
                }
                myconn.Close();
                return(dataTable);
            }
            catch (Exception ex)
            {
                LogsHelper.Print("[getdb_branch] " + ex.Message.ToString());
                LogsHelper.Print("[getdb_branch(sql)] " + SQL);

                Console.WriteLine("getdb_branch error: " + SQL);
                Console.WriteLine(ex.Message.ToString());
                return(new DataTable());
            }
        }
Exemplo n.º 2
0
        public void PropertiesContainFieldsFromStructuredLogs()
        {
            var logRecords = new List <LogRecord>();

            using var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddOpenTelemetry(options =>
                {
                    options.AddInMemoryExporter(logRecords);
                });
                builder.AddFilter(typeof(LogsHelperTests).FullName, LogLevel.Trace);
            });

            var logger = loggerFactory.CreateLogger <LogsHelperTests>();

            string log = "Hello from {name} {price}.";

            logger.LogInformation(log, "tomato", 2.99);

            var properties = new ChangeTrackingDictionary <string, string>();

            LogsHelper.GetMessageAndSetProperties(logRecords[0], properties);

            Assert.True(properties.TryGetValue("name", out string name));
            Assert.Equal("tomato", name);
            Assert.True(properties.TryGetValue("price", out string price));
            Assert.Equal("2.99", price);
        }
Exemplo n.º 3
0
        public void PropertiesContainEventIdAndEventNameIfSetOnLog()
        {
            var logRecords = new List <LogRecord>();

            using var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddOpenTelemetry(options =>
                {
                    options.ParseStateValues = true;
                    options.AddInMemoryExporter(logRecords);
                });
                builder.AddFilter(typeof(LogsHelperTests).FullName, LogLevel.Trace);
            });

            var logger = loggerFactory.CreateLogger <LogsHelperTests>();

            EventId id = new EventId(1, "TestEvent");

            logger.LogInformation(id, "Log Information");

            var properties = new ChangeTrackingDictionary <string, string>();

            LogsHelper.GetMessageAndSetProperties(logRecords[0], properties);

            Assert.True(properties.TryGetValue("EventId", out string eventId));
            Assert.Equal("1", eventId);
            Assert.True(properties.TryGetValue("EventName", out string eventName));
            Assert.Equal("TestEvent", eventName);
        }
Exemplo n.º 4
0
        public void MessageIsSetToOriginalFormatWhenIncludeFormattedMessageIsNotSet()
        {
            var logRecords = new List <LogRecord>();

            using var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddOpenTelemetry(options =>
                {
                    options.AddInMemoryExporter(logRecords);
                });
                builder.AddFilter(typeof(LogsHelperTests).FullName, LogLevel.Trace);
            });

            var logger = loggerFactory.CreateLogger <LogsHelperTests>();

            string log = "Hello from {name} {price}.";

            logger.LogInformation(log, "tomato", 2.99);

            var properties = new ChangeTrackingDictionary <string, string>();
            var message    = LogsHelper.GetMessageAndSetProperties(logRecords[0], properties);

            Assert.Equal(log, message);
            Assert.False(properties.ContainsKey("OriginalFormat"));
            Assert.True(properties.TryGetValue("name", out string name));
            Assert.Equal("tomato", name);
            Assert.True(properties.TryGetValue("price", out string price));
            Assert.Equal("2.99", price);
        }
Exemplo n.º 5
0
        public void ValidateTelemetryExceptionData(LogLevel logLevel)
        {
            var logRecords = new List <LogRecord>();

            using var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddOpenTelemetry(options =>
                {
                    options.AddInMemoryExporter(logRecords);
                });
                builder.AddFilter(typeof(TelemetryExceptionDataTests).FullName, LogLevel.Trace);
            });

            var logger = loggerFactory.CreateLogger <TelemetryExceptionDataTests>();

            var ex = new Exception("Message");

            logger.Log(logLevel, ex, "Message");

            var exceptionData = new TelemetryExceptionData(2, logRecords[0]);

            Assert.Equal(2, exceptionData.Version);
            Assert.Equal(LogsHelper.GetSeverityLevel(logLevel), exceptionData.SeverityLevel);
            Assert.Empty(exceptionData.Properties);
            Assert.Empty(exceptionData.Measurements);
            Assert.Equal(typeof(Exception).FullName + " at UnknownMethod", exceptionData.ProblemId);
            Assert.Equal(1, exceptionData.Exceptions.Count);
            Assert.Equal("Message", exceptionData.Exceptions[0].Message);
            Assert.Null(exceptionData.Exceptions[0].Stack);
            Assert.Equal(ex.GetHashCode(), exceptionData.Exceptions[0].Id);
            Assert.Empty(exceptionData.Exceptions[0].ParsedStack);
            Assert.True(exceptionData.Exceptions[0].HasFullStack);
        }
Exemplo n.º 6
0
        public static DataTable GetDataTableByStoreProcedure(string storeProcedureName, SqlParameters sqlParameters)
        {
            DataTable       resultDt   = new DataTable();
            MySqlConnection connection = ConnectToSql();

            if (connection == null)
            {
                return(null);
            }
            try
            {
                MySqlCommand cmd = new MySqlCommand(storeProcedureName, connection);
                foreach (SqlParameter sqlParameter in sqlParameters)
                {
                    cmd.Parameters.AddWithValue(sqlParameter.Field, sqlParameter.Value);
                }
                cmd.CommandType = CommandType.StoredProcedure;
                using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
                {
                    da.Fill(resultDt);
                }
                connection.Close();
                return(resultDt);
            }
            catch (Exception ex)
            {
                LogsHelper.Print(MessagesVariable.FailedFetchDataInMySql + "\n" + ex.ToString());
                return(null);
            }
        }
Exemplo n.º 7
0
 public MessageData(int version, LogRecord logRecord) : base(version)
 {
     Properties    = new ChangeTrackingDictionary <string, string>();
     Measurements  = new ChangeTrackingDictionary <string, double>();
     Message       = LogsHelper.GetMessageAndSetProperties(logRecord, Properties).Truncate(SchemaConstants.MessageData_Message_MaxLength);
     SeverityLevel = LogsHelper.GetSeverityLevel(logRecord.LogLevel);
 }
Exemplo n.º 8
0
 private void ExportDocRec()
 {
     saveFileDialog1.Title  = "请选择导出档案接收确认函Word文件位置...";
     saveFileDialog1.Filter = "Word文件|*.doc";
     if (saveFileDialog1.ShowDialog() == DialogResult.OK)
     {
         SplashScreenManager.ShowDefaultWaitForm(this, false, false);
         string       savePath = saveFileDialog1.FileName;
         StreamWriter sw;
         try
         {
             sw = new StreamWriter(savePath, false, Encoding.Default);
             sw.WriteLine(GetDomRecHTML());
             sw.Flush();
             sw.Close();
             SplashScreenManager.CloseDefaultSplashScreen();
             if (XtraMessageBox.Show("导出档案接收确认函成功,是否立即打开?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
             {
                 WinFormOpenHelper.OpenWinForm(0, "open", savePath, null, null, ShowWindowCommands.SW_NORMAL);
             }
         }
         catch (Exception ex)
         {
             LogsHelper.AddErrorLogs("导出错误", ex.Message);
         }
     }
 }
Exemplo n.º 9
0
        public void ValidateTelemetryItem(string type)
        {
            var logRecords = new List <LogRecord>();

            using var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddOpenTelemetry(options =>
                {
                    options.ParseStateValues = true;
                    options.AddInMemoryExporter(logRecords);
                });
                builder.AddFilter(typeof(LogsHelperTests).FullName, LogLevel.Trace);
            });

            var logger = loggerFactory.CreateLogger <LogsHelperTests>();

            if (type == "MessageData")
            {
                logger.LogInformation("This is a test log");
            }
            else
            {
                logger.LogWarning(new Exception("Test Exception"), "Test Exception");
            }

            var telemetryItem = LogsHelper.OtelToAzureMonitorLogs(new Batch <LogRecord>(logRecords.ToArray(), logRecords.Count), "roleName", "roleInstance", "Ikey");

            Assert.Equal(type, telemetryItem[0].Data.BaseType);
            Assert.Equal("Ikey", telemetryItem[0].InstrumentationKey);
            Assert.Equal("roleName", telemetryItem[0].Tags[ContextTagKeys.AiCloudRole.ToString()]);
            Assert.Equal("roleInstance", telemetryItem[0].Tags[ContextTagKeys.AiCloudRoleInstance.ToString()]);
        }
Exemplo n.º 10
0
        /// <summary>
        /// 保存检查对象
        /// </summary>
        /// <param name="info"></param>
        /// <returns></returns>
        public ResponseModel SaveCheckInfo(CheckInfo info)
        {
            try
            {
                info.Id             = Guid.NewGuid();
                info.CreateTime     = DateTime.Now;
                info.DistributeTime = DateTime.MinValue;
                info.DealTime       = DateTime.MinValue;
                info.Status         = 0;

                _context.CheckInfoes.Add(info);
                info.CheckItems.ForEach(x =>
                {
                    x.CheckInfoId = info.Id;
                    x.Id          = Guid.NewGuid();
                    x.Pics.ForEach(c =>
                    {
                        c.Id          = Guid.NewGuid();
                        c.CheckItemId = x.Id;
                    });
                    _context.PicInfoes.AddRange(x.Pics);
                });
                _context.CheckItems.AddRange(info.CheckItems);

                _response.Stutas = _context.SaveChanges() > 0;
            }
            catch (Exception ex)
            {
                LogsHelper.WriteErrorLog(ex, "保存检查对象");
                _response.Msg = ex.Message;
            }
            return(_response);
        }
Exemplo n.º 11
0
        public void ValidateProblemIdForExceptionWithStackTrace()
        {
            Exception ex = CreateException(1);

            var id = LogsHelper.GetProblemId(ex);

            Assert.StartsWith(typeof(AggregateException).FullName + " at " + typeof(TelemetryExceptionDataTests).FullName + "." + nameof(FunctionWithException), id);
        }
Exemplo n.º 12
0
 public void ValidateSeverityLevels()
 {
     Assert.Equal(SeverityLevel.Critical, LogsHelper.GetSeverityLevel(LogLevel.Critical));
     Assert.Equal(SeverityLevel.Error, LogsHelper.GetSeverityLevel(LogLevel.Error));
     Assert.Equal(SeverityLevel.Warning, LogsHelper.GetSeverityLevel(LogLevel.Warning));
     Assert.Equal(SeverityLevel.Information, LogsHelper.GetSeverityLevel(LogLevel.Information));
     Assert.Equal(SeverityLevel.Verbose, LogsHelper.GetSeverityLevel(LogLevel.Debug));
     Assert.Equal(SeverityLevel.Verbose, LogsHelper.GetSeverityLevel(LogLevel.Trace));
 }
Exemplo n.º 13
0
        private void frmError_Load(object sender, EventArgs e)
        {
            this.lblError.Text = this.errormessage;

            LogsHelper.Print("ERROR MESSAGE: " + this.errormessage);

            fncFullScreen fncfullscreen = new fncFullScreen(this);

            fncfullscreen.ResizeFormsControls();
        }
Exemplo n.º 14
0
 private void LoadLogs()
 {
     LogSelectorCombo.Items.Clear();
     foreach (var file in LogsHelper.GetFiles(Path.Combine(Path.GetDirectoryName(Settings.Default.JeepServicePath), "logs"), "*.log", _liveUpdateClient))
     {
         LogSelectorCombo.Items.Add(file);
     }
     if (_log != null)
     {
         LogSelectorCombo.Text = _log.Name;
     }
 }
Exemplo n.º 15
0
        public string InsertErp(Guid orderid)
        {
            bool res = false;

            try
            {
                res = _order.InsertErp(orderid);
            }
            catch (Exception ex)
            {
                LogsHelper.WriteErrorLog(ex, "导入Erp");
            }
            return(Utils.SerializeObject(res));
        }
Exemplo n.º 16
0
        public static DataTable GetDataTableByTransaction(SqlDetails sqlDetails)
        {
            MySqlConnection connection = ConnectToSql();
            DataTable       resultDt   = null;

            if (connection == null)
            {
                return(resultDt);
            }
            MySqlTransaction transaction = connection.BeginTransaction();

            resultDt = new DataTable();
            try
            {
                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection     = connection;
                cmd.CommandTimeout = 300;
                foreach (SqlDetail sqlDetail in sqlDetails)
                {
                    cmd.CommandText = sqlDetail.Sql;
                    SqlParameters sqlParameters = sqlDetail.SqlParameters;
                    foreach (SqlParameter sqlParameter in sqlParameters)
                    {
                        cmd.Parameters.AddWithValue(sqlParameter.Field, sqlParameter.Value);
                    }
                    if (sqlDetail.Sql.Trim('\r', '\n', ' ').IndexOf("SELECT", StringComparison.OrdinalIgnoreCase) == 0)
                    {
                        using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
                        {
                            da.Fill(resultDt);
                        }
                    }
                    else
                    {
                        cmd.ExecuteNonQuery();
                    }
                }
                transaction.Commit();
                connection.Close();
                return(resultDt);
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                connection.Close();
                LogsHelper.Print(MessagesVariable.FailedFetchDataInMySql + "\n" + ex.ToString());
                return(resultDt);
            }
        }
Exemplo n.º 17
0
 public ResponseModel DeleteGoodsBrands(List <string> ids)
 {
     try
     {
         var q = _context.GoodsBrands.Where(x => ids.Contains(x.Id.ToString()));
         _context.GoodsBrands.RemoveRange(q);
         _response.Stutas = _context.SaveChanges() > 0;
     }
     catch (Exception ex)
     {
         LogsHelper.WriteErrorLog(ex);
         _response.Msg = "删除失败!请刷新后重试!";
     }
     return(_response);
 }
Exemplo n.º 18
0
        public ResponseModel DeleteBlackForActive(List <Guid> ids)
        {
            try
            {
                var q = _context.BlackForActives.Where(x => ids.Contains(x.Id));
                _context.BlackForActives.RemoveRange(q);
                _response.Stutas = _context.SaveChanges() > 0;
            }
            catch (Exception ex)
            {
                _response.Msg = ex.Message;
                LogsHelper.WriteErrorLog(ex, "删除活动黑名单");
            }

            return(_response);
        }
Exemplo n.º 19
0
 /// <summary>
 /// 将本地文件上传到远程服务器共享目录
 /// </summary>
 /// <param name="src">本地文件的绝对路径,包含扩展名</param>
 /// <param name="dst">远程服务器共享文件路径,不包含文件名</param>
 /// <param name="fileName">上传到远程服务器后的文件名</param>
 public static void UploadFile(FileInfo sourceFile, string dst, string fileName)
 {
     try
     {
         if (!Directory.Exists(dst))        //判断上传到的远程服务器路径是否存在
         {
             Directory.CreateDirectory(dst);
         }
         dst = dst + "\\" + fileName;            //上传到远程服务器共享文件夹后文件的绝对路径
         sourceFile.CopyTo(dst, true);
     }
     catch (Exception e)
     {
         LogsHelper.AddErrorLogs("UploadFile", e.Message);
     }
 }
Exemplo n.º 20
0
 private void Frm_FirstPage_FormClosing(object sender, FormClosingEventArgs e)
 {
     try
     {
         UserHelper.SetLogin(false);
         if (Cef.IsInitialized)
         {
             Cef.Shutdown();
         }
         SqlHelper.CloseConnect();
         Environment.Exit(0);
     }
     catch (Exception ex)
     {
         LogsHelper.AddErrorLogs("退出错误", ex.Message);
     }
 }
Exemplo n.º 21
0
        public static void DeleteUnusedSalesHead()
        {
            // done to avoid deletion of current pending transaction
            return;

            string    sql = @"
                SELECT
                    `ornumber`
                FROM
                    `saleshead`
                WHERE
                    `branchid`=" + cls_globalvariables.BranchCode + @"
                    AND `terminalno` = " + cls_globalvariables.terminalno_v + @"
                    AND `date` >= '" + DateTime.Now.AddDays(-10).ToString("yyyy-MM-dd") + @"'
                    AND `status` = 1
                ORDER BY `ornumber` DESC LIMIT 1;";
            DataTable DT  = mySQLFunc.getdb(sql);

            if (DT == null || DT.Rows.Count <= 0)
            {
                return;
            }
            sql = @"
                SELECT
                    GROUP_CONCAT(`SyncId`) AS 'wids', GROUP_CONCAT(`ornumber`) AS 'ornumbers'
                FROM
                    `saleshead`
                WHERE
                    `branchid`=" + cls_globalvariables.BranchCode + @"
                    AND `terminalno` = " + cls_globalvariables.terminalno_v + @"
                    AND `date` >= '" + DateTime.Now.AddDays(-10).ToString("yyyy-MM-dd") + @"'
                    AND `ornumber` > " + DT.Rows[0]["ornumber"].ToString() + @"
                    AND `status` = 0";

            DT = mySQLFunc.getdb(sql);
            if (DT == null || DT.Rows[0]["wids"] == null || DT.Rows[0]["wids"].ToString() == "")
            {
                return;
            }
            string wids      = DT.Rows[0]["wids"].ToString();
            string ornumbers = DT.Rows[0]["wids"].ToString();

            sql = @"DELETE FROM saleshead WHERE `SyncId` IN (" + wids + ")";
            mySQLFunc.setdb(sql);
            LogsHelper.Print("DELETED2 in saleshead ors = " + ornumbers);
        }
Exemplo n.º 22
0
 private void frmChange_c_Shown(object sender, EventArgs e)
 {
     if (Visible && flag)
     {
         flag = false;
         int  temp  = 0;
         bool retry = false;
         do
         {
             retry = false;
             frmLoad loadForm = new frmLoad("Saving Transaction", "Loading Screen");
             loadForm.BackgroundWorker.DoWork += (sender1, e1) =>
             {
                 temp = POSMain.save_transaction_thread(tran);
             };
             loadForm.ShowDialog();
             if (temp == 0)
             {
                 LogsHelper.Print("Tender success");
             }
             else if (temp == 1)
             {
                 fncFilter.alert("Member transaction was unable to complete due to connection problems. F8 - Payment to try again.");
                 LogsHelper.Print("Tender failed: Member Feature Offline");
                 isTransactionDone = false;
             }
             else if (temp == -1)
             {
                 LogsHelper.Print("Tender failed: General Saving failure");
                 if (DialogHelper.ShowDialog("An error occured in saving transaction. Would you like to retry?", MessageBoxButtons.YesNo) == DialogResult.Yes)
                 {
                     retry = true;
                     LogsHelper.Print("Tender failure popup: Retry");
                 }
                 else
                 {
                     LogsHelper.Print("Tender failure popup: Ignore");
                     fncHardware.print_receipt(tran, false, false);
                 }
             }
         }while (retry);
     }
 }
Exemplo n.º 23
0
        public static Boolean setdb_branch(string SQL, string server, string userid, string password, string database)
        {
            if (!check_connection_branch(server, userid, password, database))
            {
                return(false);
            }

            string cs = @"server=" + server + ";userid=" + userid + ";password="******";database=" + database + ";Allow Zero Datetime=true;Charset = utf8;Connect Timeout=300;";

            MySqlConnection myconn = null;

            try
            {
                myconn = new MySqlConnection(cs);
                myconn.Open();
            }
            catch (Exception ex)
            {
                Console.WriteLine("setdb_branch connect error: " + server);
                Console.WriteLine(ex.Message.ToString());
                return(false);
            }

            try
            {
                MySqlCommand cmd = new MySqlCommand(SQL, myconn);
                cmd.CommandTimeout = 300;
                cmd.ExecuteNonQuery();
                myconn.Close();
                return(true);
            }
            catch (Exception ex)
            {
                LogsHelper.Print("[setdb_branch] " + ex.Message.ToString());
                LogsHelper.Print("[setdb_branch(sql)] " + SQL);

                Console.WriteLine("setdb_branch error: " + SQL);
                Console.WriteLine(ex.Message.ToString());
                return(false);
            }
        }
Exemplo n.º 24
0
 public static bool ExecuteQueryByStoreProcedure(string storeProcedureName, SqlParameters sqlParameters)
 {
     try
     {
         MySqlConnection connection = ConnectToSql();
         MySqlCommand    cmd        = new MySqlCommand(storeProcedureName, connection);
         foreach (SqlParameter sqlParameter in sqlParameters)
         {
             cmd.Parameters.AddWithValue(sqlParameter.Field, sqlParameter.Value);
         }
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.ExecuteNonQuery();
         connection.Close();
         return(true);
     }
     catch (Exception ex)
     {
         LogsHelper.Print(MessagesVariable.FailedExecuteQueryInMySql + "\n" + ex.ToString());
         return(false);
     }
 }
Exemplo n.º 25
0
        public ActionResult Upload(HttpPostedFileBase file)
        {
            if (Request.Files.Count == 0)
            {
                return(Json(new { jsonrpc = 2.0, error = new { code = 102, message = "没有任何文件上传" }, id = "id" }));
            }
            string ex = Path.GetExtension(file.FileName);

            try
            {
                string path     = "/GoodImg/" + DateTime.Now.ToString("yyyy_MM_dd") + "/";
                string savepath = Server.MapPath(path);//设定上传的文件路径
                if (!Directory.Exists(savepath))
                {
                    Directory.CreateDirectory(savepath);
                }
                string fileName = Guid.NewGuid().ToString("N") + ex;
                file.SaveAs(savepath + fileName);
                string returnPath = path + fileName;
                return(Json(new
                {
                    status = true,
                    filePath = returnPath,
                    saveName = file.FileName,
                    extension = ex
                }));
            }
            catch (Exception e)
            {
                LogsHelper.WriteErrorLog("上传图片失败!", e, "商品管理");
            }
            return(Json(new
            {
                status = false,
                filePath = "",
                saveName = "",
                extension = ""
            }));
        }
Exemplo n.º 26
0
 private void ReadLog()
 {
     if (_log == null)
     {
         return;
     }
     try
     {
         using (var stream = LogsHelper.GetFile(_log, _liveUpdateClient))
         {
             richTextBox1.LoadFile(stream, RichTextBoxStreamType.PlainText);
             richTextBox1.SelectionStart = richTextBox1.Text.Length;
             richTextBox1.ScrollToCaret();
         }
     }
     catch (IOException)
     {
         Console.WriteLine("Errore in accesso a documento.");
         // Errore in accesso a file bloccato, attendo 1secondo e continuo
         Thread.Sleep(500);
     }
 }
Exemplo n.º 27
0
        /// <summary>
        /// 验证手机短信验证码
        /// </summary>
        /// <param name="sendType">发送类型</param>
        /// <param name="phone">手机号</param>
        /// <param name="code">短信验证码</param>
        /// <returns></returns>
        public ReturnModel CheckSmsVcode(short sendType, string phone, string code)
        {
            var rm = new ReturnModel();

            try
            {
                Dictionary <string, object> parms = new Dictionary <string, object>();
                parms.Add("sendType", sendType);
                parms.Add("telephone", phone);
                parms.Add("code", code);
                rm = HttpRequestHelper.PostRequest <ReturnModel>(HttpApiHelper.CreateHttpApiCall(CustomConfig.ApiBaseService, apiSmsController, "validateCode"), parms);
                if (rm.code != "0" || (rm.code == "0" && rm.subCode != "32100"))
                {
                    LogsHelper.WriteCustomLog("sms", string.Format("SmsServiceHelper CheckSmsVcode,【sendType:{0},phone:{1},code:{2}】,【rmCode:{3},rmSubCode:{4}】,{5},{6}", sendType, phone, code, rm.code, rm.subCode, CustomConfig.ApiBaseService.ConvertEmptyString(), rm.message), rm.bodyMessage.ConvertEmptyString());
                }
            }
            catch (Exception ex)
            {
                rm.bodyMessage = ex.Message;
                LogsHelper.WriteCustomLog("sms", string.Format("SmsServiceHelper CheckSmsVcode Exception,【sendType:{0},phone:{1},code:{2}】,{3}", sendType, phone, code, ex.Message), ex.ToString());
            }
            return(rm);
        }
Exemplo n.º 28
0
        public TelemetryExceptionData(int version, LogRecord logRecord) : base(version)
        {
            Properties   = new ChangeTrackingDictionary <string, string>();
            Measurements = new ChangeTrackingDictionary <string, double>();

            var message = LogsHelper.GetMessageAndSetProperties(logRecord, Properties);

            SeverityLevel = LogsHelper.GetSeverityLevel(logRecord.LogLevel);
            ProblemId     = LogsHelper.GetProblemId(logRecord.Exception).Truncate(SchemaConstants.ExceptionData_ProblemId_MaxLength);

            // collect the set of exceptions detail info from the passed in exception
            List <TelemetryExceptionDetails> exceptions = new List <TelemetryExceptionDetails>();

            ConvertExceptionTree(logRecord.Exception, message, null, exceptions);

            // trim if we have too many, also add a custom exception to let the user know we're trimmed
            if (exceptions.Count > MaxExceptionCountToSave)
            {
                // create our "message" exception.
                InnerExceptionCountExceededException countExceededException =
                    new InnerExceptionCountExceededException(
                        string.Format(
                            CultureInfo.InvariantCulture,
                            "The number of inner exceptions was {0} which is larger than {1}, the maximum number allowed during transmission. All but the first {1} have been dropped.",
                            exceptions.Count,
                            MaxExceptionCountToSave));

                // remove all but the first N exceptions
                exceptions.RemoveRange(MaxExceptionCountToSave,
                                       exceptions.Count - MaxExceptionCountToSave);

                // we'll add our new exception and parent it to the root exception (first one in the list)
                exceptions.Add(new TelemetryExceptionDetails(countExceededException, countExceededException.Message, exceptions[0]));
            }

            Exceptions = exceptions;
        }
Exemplo n.º 29
0
        public static bool ExecuteTransaction(SqlDetails sqlDetails)
        {
            MySqlConnection connection = ConnectToSql();

            if (connection == null)
            {
                return(false);
            }
            MySqlTransaction transaction = connection.BeginTransaction();

            try
            {
                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection     = connection;
                cmd.CommandTimeout = 300;
                foreach (SqlDetail sqlDetail in sqlDetails)
                {
                    cmd.CommandText = sqlDetail.Sql;
                    foreach (SqlParameter sqlParameter in sqlDetail.SqlParameters)
                    {
                        cmd.Parameters.AddWithValue(sqlParameter.Field, sqlParameter.Value);
                    }
                    cmd.ExecuteNonQuery();
                }
                transaction.Commit();
                connection.Close();
                return(true);
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                connection.Close();
                LogsHelper.Print(MessagesVariable.FailedExecuteQueryInMySql + "\n" + ex.ToString());
                return(false);
            }
        }
        public void ValidateMessageData(LogLevel logLevel)
        {
            var logRecords = new List <LogRecord>();

            using var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddOpenTelemetry(options =>
                {
                    options.AddInMemoryExporter(logRecords);
                });
                builder.AddFilter(typeof(LogsHelperTests).FullName, LogLevel.Trace);
            });

            var logger = loggerFactory.CreateLogger <MessageDataTests>();

            logger.Log(logLevel, "Log Message");

            var messageData = new MessageData(2, logRecords[0]);

            Assert.Equal("Log Message", messageData.Message);
            Assert.Equal(LogsHelper.GetSeverityLevel(logLevel), messageData.SeverityLevel);
            Assert.Empty(messageData.Properties);
            Assert.Empty(messageData.Measurements);
        }