public EtlSession[] GetEtlSessions(EtlSessionQuery query) { var result = new List<EtlSession>(); foreach (var agent in _etlAgents) { var logParser = agent.GetEtlLogParser(); result.AddRange(logParser.GetEtlSessions(query)); } return result.ToArray(); }
public void CanGetEtlSessionResultById() { var agent = CreateAgent(); var logParser = agent.GetEtlLogParser(); var query = new EtlSessionQuery { FromDateTime = DateTime.Now.Subtract(_sessionTimeSpan), ToDateTime = DateTime.Now, }; var sessions = logParser.GetEtlSessions(query); Assert.IsNotNull(sessions); Assert.IsTrue(sessions.Length > 0); var packageId = sessions[0].EtlPackageId; var sessionId = sessions[0].EtlSessionId; var session = logParser.GetEtlSession(packageId, sessionId); Assert.IsNotNull(session); }
public void CanGenEtlSessionResultsWork() { var agent = CreateAgent(); var logParser = agent.GetEtlLogParser(); var query = new EtlSessionQuery { FromDateTime = DateTime.Now.Subtract(_sessionTimeSpan), ToDateTime = DateTime.Now, EtlPackageIds = { Guid.Empty.ToString() }, Variables = { new EtlVariableFilter("aaa", "bbb"), new EtlVariableFilter("ccc", "ddd") }, MaxSessionCount = 10, }; var sessions = logParser.GetEtlSessions(query); Assert.IsNotNull(sessions); Assert.AreEqual(0, sessions.Length); }
private EtlSession[] GetEtlSessions(EtlSessionListModel model) { var dateTo = DateTime.ParseExact(model.DateTo, SharedStrings.DateFormat, null); var dateFrom = DateTime.ParseExact(model.DateFrom, SharedStrings.DateFormat, null); var oneDay = dateTo == dateFrom; dateTo = dateTo.AddDays(1); var query = new EtlSessionQuery { FromDateTime = dateFrom, ToDateTime = dateTo, MaxSessionCount = model.DefaultMaxSessionCount, }; if (model.Status > 0) { query.EtlStatuses.Add(model.Status); } var agent = SiteConfiguration.GetEtlAgent(); var logParser = agent.GetEtlLogParser(); var sessions = logParser.GetEtlSessions(query); return sessions; }
private static EtlSessionQuery CreateSessionQuery(EtlMailSubscription subscription) { var query = new EtlSessionQuery { ToDateTime = DateTime.Now, FromDateTime = DateTime.Now.Subtract(TimeSpan.FromSeconds(subscription.OnLastSeconds)), }; query.EtlStatuses.AddRange(subscription.EtlStatuses); return query; }
public void CannotGetEtlSessionResultsByAbsentId() { var agent = CreateAgent(); var logParser = agent.GetEtlLogParser(); var query = new EtlSessionQuery { FromDateTime = DateTime.Now.Subtract(_sessionTimeSpan), ToDateTime = DateTime.Now, EtlPackageIds = { Guid.Empty.ToString() }, }; var sessions = logParser.GetEtlSessions(query); Assert.IsNotNull(sessions); Assert.AreEqual(0, sessions.Length); }
private static EtlDump GetDump(IEtlAgent agent, int lastSeconds, List<EtlStatus> etlStatuses, List<string> etlPackageIds) { var writer = new EtlDumpWriter(new EtlDumpSettings()); var query = new EtlSessionQuery { ToDateTime = DateTime.Now, FromDateTime = DateTime.Now.Subtract(TimeSpan.FromSeconds(lastSeconds)), }; query.EtlStatuses.AddRange(etlStatuses); query.EtlPackageIds.AddRange(etlPackageIds); var logParser = agent.GetEtlLogParser(); writer.Write(query, logParser); var dump = writer.GetDump(); dump.Sessions.Sort(new Comparison<EtlSessionSummary>(SortSessionsDesc)); return dump; }