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 { }
        }
Beispiel #2
0
 /// <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"];
     }
 }
Beispiel #3
0
        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();
        }
Beispiel #4
0
 /// <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");
     }
 }
Beispiel #5
0
        /// <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);
            }
        }
Beispiel #6
0
 /// <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);
 }