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()); } }
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); }
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); }
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); }
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); }
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); } }
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); }
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); } } }
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()]); }
/// <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); }
public void ValidateProblemIdForExceptionWithStackTrace() { Exception ex = CreateException(1); var id = LogsHelper.GetProblemId(ex); Assert.StartsWith(typeof(AggregateException).FullName + " at " + typeof(TelemetryExceptionDataTests).FullName + "." + nameof(FunctionWithException), id); }
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)); }
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(); }
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; } }
public string InsertErp(Guid orderid) { bool res = false; try { res = _order.InsertErp(orderid); } catch (Exception ex) { LogsHelper.WriteErrorLog(ex, "导入Erp"); } return(Utils.SerializeObject(res)); }
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); } }
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); }
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); }
/// <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); } }
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); } }
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); }
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); } }
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); } }
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); } }
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 = "" })); }
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); } }
/// <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); }
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; }
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); }