コード例 #1
0
        public List <LogReport> GetReportsOfSeverity(string severity, string user)
        {
            List <LogReport> slist = new List <LogReport>();

            try
            {
                MySqlConnection conn = getConnection();
                conn.Open();

                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection  = conn;
                cmd.CommandText = "select r.id, r.user_id, r.type, r.severity, r.date_posted from reports r inner join users u on u.id=r.user_id where severity='" + severity + "' and u.username='******'";
                MySqlDataReader myreader = cmd.ExecuteReader();

                while (myreader.Read())
                {
                    LogReport report = new LogReport();
                    report.Id       = myreader.GetInt32("id");
                    report.User_id  = myreader.GetInt32("user_id");
                    report.Type     = myreader.GetString("type");
                    report.Severity = myreader.GetString("severity");
                    report.Date     = myreader.GetString("date_posted");
                    slist.Add(report);
                }
                myreader.Close();

                conn.Close();
            }
            catch (MySqlException ex)
            {
                Console.Write(ex.Message);
            }
            return(slist);
        }
コード例 #2
0
        public List <LogReport> GetLogReports()
        {
            List <LogReport> slist = new List <LogReport>();

            try
            {
                MySqlConnection conn = getConnection();
                conn.Open();

                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection  = conn;
                cmd.CommandText = "select * from reports";
                MySqlDataReader myreader = cmd.ExecuteReader();

                while (myreader.Read())
                {
                    LogReport report = new LogReport();
                    report.Id       = myreader.GetInt32("id");
                    report.User_id  = myreader.GetInt32("user_id");
                    report.Type     = myreader.GetString("type");
                    report.Severity = myreader.GetString("severity");
                    report.Date     = myreader.GetString("date_posted");
                    slist.Add(report);
                }
                myreader.Close();

                conn.Close();
            }
            catch (MySqlException ex)
            {
                Console.WriteLine("here");
                Console.Write(ex.Message);
            }
            return(slist);
        }
コード例 #3
0
        /// <summary>
        /// Format the LogReport into a change log
        /// which will be written to textWriter
        /// </summary>
        private void FormatReport(XmlTextWriter textWriter, LogReport logReport)
        {
            LogRevision logRevision;

            // This is where we accumulate information on all the entries from the log command
            SortedList entries = new SortedList();
            LogEntry   entry;
            string     prevRevision;

            // now collect together revisions that were checked-in together
            foreach (LogFile logFile in logReport)
            {
//              foreach (LogRevision logRevision in logFile)
                // traverse revisions in reverse order so we look at oldest first
                // which simplifies the remembering the previous revision
                prevRevision = "";
                for (int idx = logFile.Count - 1; idx >= 0; idx--)
                {
                    logRevision = logFile[idx];
                    entry       = new LogEntry(logRevision.Timestamp, logRevision.Author, logRevision.Comment);
                    // determine if this entry already exists
                    if (entries.ContainsKey(entry.Key))
                    {
                        // need to update an existing entry
                        entry = (LogEntry)entries[entry.Key];
                    }
                    else
                    {
                        // add new entry
                        entries.Add(entry.Key, entry);
                    }
                    // finally add details about the file/revision
                    entry.AddFileRevision(logFile.WorkingFnm, logRevision.Revision, prevRevision);
                    prevRevision = logRevision.Revision;
                }
            }

            // now finally produce the XML report
//            try {
            textWriter.Formatting = Formatting.Indented;
            textWriter.WriteStartDocument();
            textWriter.WriteStartElement("changelog");

            // add the entries ...
            foreach (DictionaryEntry de in entries)
            {
                LogEntry logEntry = (LogEntry)de.Value;
                logEntry.ExportToXml(textWriter, nameMap);
            }

            // finish off
            textWriter.WriteEndElement();        // changelog
            textWriter.WriteEndDocument();
            textWriter.Close();
//            } catch (Exception e) {
//                System.Console.WriteLine("XML write error: {0}", e.Message);
//                throw e;
//            }
        }
コード例 #4
0
        /// <summary>
        /// Produce the report
        /// </summary>
        public void Run(XmlTextWriter textWriter, ICommandConnection connection)
        {
            // send the log command to the cvs server and get the LogReport
            LogReport logReport = logCommand.Run(connection);

            // now format the LogReport into a change log
            FormatReport(textWriter, logReport);
        }
コード例 #5
0
        /// <summary>
        /// Produce the report
        /// </summary>
        public void Run(XmlTextWriter textWriter, string password)
        {
            // send the log command to the cvs server and get the LogReport
            LogReport logReport = logCommand.Run(password);

            // now format the LogReport into a change log
            FormatReport(textWriter, logReport);
        }
コード例 #6
0
        private void onCellClick(object sender, DataGridViewCellEventArgs e)
        {
            object    obj    = grid.Rows[e.RowIndex].Tag;
            LogReport report = (LogReport)obj;

            if (null != OnReportSelected)
            {
                OnReportSelected(report);
            }
        }
コード例 #7
0
        /// <summary>
        /// Parsing Detail Report to Model LogReport and Insert
        /// </summary>
        /// <param name="project"></param>
        /// <param name="source"></param>
        /// <param name="description"></param>
        public void WriteLog(string project, string source, string description)
        {
            LogReport logReportData = Factory.Create <LogReport>("LogReport", ClassType.clsTypeDataModel);

            logReportData.Project     = project;
            logReportData.Source      = source;
            logReportData.Description = description;
            logReportData.LogDate     = DateTime.Now;
            //InsertDb(logReportData);
        }
コード例 #8
0
        public bool AddLogReport(LogReport log)
        {
            MySqlCommand    cmd  = new MySqlCommand();
            MySqlConnection conn = getConnection();

            conn.Open();
            cmd.Connection  = conn;
            cmd.CommandText = "INSERT INTO reports(user_id, type, severity, date_posted) VALUES (" +
                              log.User_id + ", '" + log.Type + "', '" + log.Severity + "', '" + log.Date + "');";
            int cnt = cmd.ExecuteNonQuery();

            conn.Close();
            return(cnt == 1);
        }
コード例 #9
0
        public ActionResult SaveReport()
        {
            DAL       dal = new DAL();
            LogReport log = new LogReport();

            log.User_id  = dal.GetUserIdOfUser(Request.Params["username"]);
            log.Date     = Request.Params["date"];
            log.Severity = Request.Params["severity"];
            log.Type     = Request.Params["type"];

            bool result = dal.AddLogReport(log);

            return(Json(new { success = result }));
        }
コード例 #10
0
        public static void BeforeBeginTests(TestContext TestContext)
        {
            DirectoryInfo currentDir       = new DirectoryInfo(Directory.GetCurrentDirectory());
            string        parentResultpath = currentDir.Parent.Parent.Parent.FullName + @"\Result Folder\API_" + DateTime.Now.ToString("yyyy-MM-dd_hh-mm-ss") + @"\";
            string        curdir           = currentDir.Parent.Parent.Parent.FullName;

            PropertiesReference.Properties.CurrentDirectory = curdir;
            PropertiesReference.Properties.ParentPath       = parentResultpath;
            ComponentHelper.Generic.CreateFolder(parentResultpath);

            PropertiesReference.Properties.BatchBeginTime = DateTime.Now;
            HTMLReport.CreateHTML(TestContext);
            LogReport.CreateLogFile(TestContext);
        }
コード例 #11
0
        public static string Dump(LogPriority logPriority, LogReport report, int count = 1000)
        {
            string sql =
                $"SELECT TOP {count} created, priority, tag, msg FROM SysLog WHERE Priority >= @priority ORDER BY created DESC";

            using (var q = new SqlStatement(sql, Config.Settings.ConnectionString))
            {
                q.AddParameter("@Priority", logPriority);
                using (var reader = q.ExecuteReader())
                {
                    if (reader.HasRows)
                    {
                        Environment.ExitCode = 1;
                    }
                    var r = LogReporter.Write(reader, report);
                    return(r);
                }
            }
        }
コード例 #12
0
ファイル: LogReportControl.cs プロジェクト: macieja79/budget
        public void SetReport(LogReport report)
        {
            if (null == report)
            {
                return;
            }

            grid.Rows.Clear();
            grid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;

            foreach (LogReportItem item in report.Items)
            {
                int r = grid.Rows.Add();
                grid[COL_ICON, r].Value = GetBitmap(item.TypeOfLogItem);

                string date = LogReportItem.GetDate(item.Date, TypeOfDateDisplay);

                grid[COL_DATE, r].Value          = date;
                grid[COL_DESC, r].Value          = item.Message;
                grid[COL_DESC, r].Style.WrapMode = DataGridViewTriState.True;
                grid.Rows[r].Tag = item;
            }
        }
コード例 #13
0
        internal List <LogReport> GetReportsOnPage(int pageNo, int pageSize, int totalSize)
        {
            int offset               = pageNo * pageSize;
            int totalPages           = (int)Math.Ceiling((double)totalSize / pageSize);
            List <LogReport> reports = new List <LogReport>();

            try
            {
                MySqlConnection conn = getConnection();
                conn.Open();

                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection = conn;

                cmd.CommandText = "select * from reports limit " + offset + ", " + pageSize + ";";
                MySqlDataReader myreader = cmd.ExecuteReader();

                while (myreader.Read())
                {
                    LogReport report = new LogReport();
                    report.Id       = myreader.GetInt32("id");
                    report.User_id  = myreader.GetInt32("user_id");
                    report.Type     = myreader.GetString("type");
                    report.Severity = myreader.GetString("severity");
                    report.Date     = myreader.GetString("date_posted");
                    reports.Add(report);
                }
                myreader.Close();

                conn.Close();
            }
            catch (MySqlException e)
            {
            }
            return(reports);
        }
コード例 #14
0
 /// <summary>
 /// Insert Log Report to Database
 /// </summary>
 /// <param name="logreport"></param>
 private void InsertDb(LogReport logreport)
 {
     _dBtsics.LogReport.Add(logreport);
     _dBtsics.SaveChanges();
 }
コード例 #15
0
 void list_OnReportSelected(LogReport report)
 {
     reportDetails.SetReport(report);
 }
コード例 #16
0
 public static void QuickLog <C>(this ILogger <C> logger, LogReport logReport) => logger.Log(logReport.LogLevel, logReport.Message);