private void log(string message, string stacktrace, LogTrigger logTrigger, LogType logType) { try { var query = new Query(logTable) .AsInsert(new { stacktrace, message, log_type = logType.ToString(), log_trigger = logTrigger.ToString(), creation_date = DateTime.Now, }); SqlResult queryResult = new SqlServerCompiler().Compile(query); SqlExecutionInstance.ExecuteNonQuery(new SqlCommand(queryResult.Sql), new SqlParameter[] { new SqlParameter("p0", queryResult.Bindings[0]), new SqlParameter("p1", queryResult.Bindings[1]), new SqlParameter("p2", queryResult.Bindings[2]), new SqlParameter("p3", queryResult.Bindings[3]), new SqlParameter("p4", queryResult.Bindings[4]) }, new SqlConnection(this.connectionString)); } catch { } }
/// <summary> /// Handles the Load event of the Page control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void Page_Load(object sender, System.EventArgs e) { if (Session["trigger"] != null) { _trigger = ( LogTrigger )Session["trigger"]; } }
public AutoLogger(AutoLogSettings autoLogSettings, string logSavePath) { _logStartTrigger = autoLogSettings.AutoLogConditions; _logSaveTrigger = autoLogSettings.LogSaveConditions; _logKnockThreshold = autoLogSettings.KnockThreshold; _autoLogKnock = autoLogSettings.AutoLogKnock; _logSavePath = logSavePath.Trim(@"\".ToCharArray()); _logSavePath = _logSavePath.Trim(); }
/// <summary> /// Handles the PreRender event of the Page control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void Page_PreRender(object sender, EventArgs e) { if (_trigger != null && !_trigger.isExecuting) { _trigger.Dispose(); _trigger = null; Session.Remove("trigger"); tmrSyncSQL.Enabled = false; btnImport.Enabled = true; } else if (_trigger == null) { Session.Remove("log"); Session.Remove("trigger"); } }
/// <summary> /// Runs the SQL. /// </summary> /// <param name="sqlCommand">The SQL command.</param> /// <param name="sqlParams">The SQL parameters.</param> /// <param name="storedProcedure">if set to <c>true</c> [stored procedure].</param> /// <param name="statusText">The status text.</param> public void RunSQL(string sqlCommand, List <SqlParameter> sqlParams, bool storedProcedure, out string statusText) { statusText = string.Empty; try { // remove any existing commands Session.RemoveAll(); if (_trigger != null) { _trigger.Dispose(); } // create command and assign delegate handlers _trigger = new LogTrigger(); _trigger.LogEvent += new LogTrigger.InfoMessage(LogEvent); _trigger.connection = new SqlConnection(TableExtensions.GetConnectionString()); _trigger.command = new SqlCommand(sqlCommand); if (storedProcedure) { _trigger.command.CommandType = CommandType.StoredProcedure; } foreach (var param in sqlParams) { _trigger.command.Parameters.Add(param); } // start the command and the timer _trigger.Start(); tmrSyncSQL.Enabled = true; Session["trigger"] = _trigger; } catch (Exception ex) { statusText += string.Format("Could not connect to the database. {0}<br>", ex.Message); } }
/// <summary> /// Subscribes and triggers the logging event /// </summary> /// <param name="logMessage">The message to be logged</param> /// <returns></returns> public async Task WriteLogEventAsync(Message logMessage) { LogTrigger.Logger -= new LogTrigger.LogHandler(WriteLogAsync); LogTrigger.Logger += new LogTrigger.LogHandler(WriteLogAsync); await LogTrigger.Log(logMessage); }
public void LogWarning(string message, LogTrigger trigger) { log(message, string.Empty, trigger, LogType.Warning); }
public void LogInfo(string message, LogTrigger trigger) { log(message, string.Empty, trigger, LogType.Info); }
public void LogError(Exception exception, LogTrigger trigger) { log(exception.Message, exception.StackTrace, trigger, LogType.Error); }
public void LogError(string message, string stacktrace, LogTrigger trigger) { log(message, stacktrace, trigger, LogType.Error); }