private static void ExecuteLogQuery(Dictionary <string, StringBuilder> query, IWebSocketConnection socket, IWriter writer) { var serializer = new Dev2JsonSerializer(); var seriLoggerSource = new SeriLoggerSource(); var auditQueryable = new AuditQueryableSqlite(seriLoggerSource.ConnectionString, seriLoggerSource.TableName); var results = auditQueryable.QueryLogData(query); writer.WriteLine("sending QueryLog to server: " + results + "..."); socket.Send(serializer.Serialize(results)); }
public void AuditQueryableSqlite_QueryLogData_FilterBy_NoParameters() { var auditQueryable = new AuditQueryableSqlite(connstring); var query = new Dictionary <string, StringBuilder>(); var results = auditQueryable.QueryLogData(query); _ = results.ToList(); Assert.AreEqual(sqlMessage + "ORDER BY TimeStamp Desc LIMIT 20", auditQueryable.Query.ToString()); }
public void AuditQueryableSqlite_QueryLogData_FilterBy_EventLevel_IncorrectLevel() { var query = new Dictionary <string, StringBuilder> { { "EventLevel", "Wrong".ToStringBuilder() } }; var auditQueryable = new AuditQueryableSqlite(connstring); var results = auditQueryable.QueryLogData(query); _ = results.ToList(); Assert.AreEqual(sqlMessage + "ORDER BY TimeStamp Desc LIMIT 20", auditQueryable.Query.ToString()); }
public void AuditQueryableSqlite_QueryLogData_FilterBy_ExecutionId() { var executionID = Guid.NewGuid(); var query = new Dictionary <string, StringBuilder> { { "ExecutionID", executionID.ToString().ToStringBuilder() } }; var auditQueryable = new AuditQueryableSqlite(connstring); var results = auditQueryable.QueryLogData(query); _ = results.ToArray(); Assert.AreEqual(sqlMessage + "WHERE json_extract(Message, '$.ExecutionID') = '" + executionID.ToString() + "' ORDER BY TimeStamp Desc LIMIT 20", auditQueryable.Query.ToString()); }
public void AuditQueryable_AuditQueryableSqlite_QueryLogData() { var executionID = Guid.NewGuid(); var query = new Dictionary <string, StringBuilder> { { "ExecutionID", executionID.ToString().ToStringBuilder() }, { "EventLevel", "Debug".ToStringBuilder() } }; var auditQueryable = new AuditQueryableSqlite(connstring); var results = auditQueryable.QueryLogData(query); _ = results.ToArray(); Assert.IsTrue(auditQueryable is AuditQueryableSqlite); }
public void AuditQueryableSqlite_AuditQueryableSqlite_QueryLogData_FilterBy_DateTime() { var StartDateTime = DateTime.Now; var CompletedDateTime = StartDateTime.AddMinutes(30); var query = new Dictionary <string, StringBuilder> { { "StartDateTime", StartDateTime.ToString().ToStringBuilder() }, { "CompletedDateTime", CompletedDateTime.ToString().ToStringBuilder() } }; var auditQueryable = new AuditQueryableSqlite(connstring); var results = auditQueryable.QueryLogData(query); _ = results.ToArray(); Assert.AreEqual(sqlMessage + "WHERE (Timestamp >= '" + StartDateTime.ToString("yyyy-MM-ddTHH:mm:ss") + "' AND Timestamp <= '" + CompletedDateTime.ToString("yyyy-MM-ddTHH:mm:ss") + "') ORDER BY TimeStamp Desc LIMIT 20", auditQueryable.Query.ToString()); }
public void AuditQueryableSqlite_AuditQueryableSqlite_QueryLogData_FilterBy_DateTime_EventLevel_executionID() { var executionID = Guid.NewGuid(); var StartDateTime = DateTime.Now; var CompletedDateTime = StartDateTime.AddMinutes(30); var query = new Dictionary <string, StringBuilder> { { "ExecutionID", executionID.ToString().ToStringBuilder() }, { "EventLevel", "Debug".ToStringBuilder() }, { "StartDateTime", StartDateTime.ToString().ToStringBuilder() }, { "CompletedDateTime", CompletedDateTime.ToString().ToStringBuilder() } }; var auditQueryable = new AuditQueryableSqlite(connstring); var results = auditQueryable.QueryLogData(query); _ = results.ToArray(); Assert.AreEqual(sqlMessage + "WHERE Level = 'Debug' AND json_extract(Message, '$.ExecutionID') = '" + executionID + "' AND (Timestamp >= '" + StartDateTime.ToString("yyyy-MM-ddTHH:mm:ss") + "' AND Timestamp <= '" + CompletedDateTime.ToString("yyyy-MM-ddTHH:mm:ss") + "') ORDER BY TimeStamp Desc LIMIT 20", auditQueryable.Query.ToString()); }
public void AuditQueryableSqlite_AuditQueryableSqlite_QueryLogData_FilterBy_DateTime_On_UrlEncoded_DateTime_EventLevel_and_executionID_Should_Not_Break() { var executionID = Guid.NewGuid(); var StartDateTime = "2019%2F10%2F01+01%3A40%3A18"; var CompletedDateTime = "2019%2F10%2F03+01%3A40%3A18"; var query = new Dictionary <string, StringBuilder> { { "ExecutionID", executionID.ToString().ToStringBuilder() }, { "EventLevel", "Debug".ToStringBuilder() }, { "StartDateTime", StartDateTime.ToString().ToStringBuilder() }, { "CompletedDateTime", CompletedDateTime.ToString().ToStringBuilder() } }; var audit = new AuditQueryableSqlite(connstring); var results = audit.QueryLogData(query); _ = results.ToArray(); Assert.AreEqual(sqlMessage + "WHERE Level = 'Debug' AND json_extract(Message, '$.ExecutionID') = '" + executionID + "' AND (Timestamp >= '2019-10-01T01:40:18' AND Timestamp <= '2019-10-03T01:40:18') ORDER BY TimeStamp Desc LIMIT 20", audit.Query.ToString()); }