private static EtlSessionSummary GetEtlSessionSummary(EtlSession session, IEtlLogParser logParser)
        {
            var sessionSummary = new EtlSessionSummary
            {
                EtlPackageId = session.EtlPackageId,
                EtlPackageName = session.EtlPackageName,
                EtlSessionId = session.EtlSessionId,
                StartDateTime = session.StartDateTime,
                StartUtcDateTime = session.StartUtcDateTime,
                EndDateTime = session.EndDateTime,
                EndUtcDateTime = session.EndUtcDateTime,
                Status = session.Status,
                UserName = session.UserName,
            };

            var variables = logParser.GetEtlVariables(session.EtlPackageId, session.EtlSessionId);
            sessionSummary.Variables.AddRange(variables);

            var counters = logParser.GetEtlCounters(session.EtlPackageId, session.EtlSessionId);
            sessionSummary.Counters.AddRange(counters);

            var messages = logParser.GetEtlMessages(session.EtlPackageId, session.EtlSessionId);
            sessionSummary.Messages.AddRange(messages);

            for (var i = messages.Length - 1; i >= 0; i--)
            {
                if (messages[i].MessageType == EtlMessageType.Error)
                {
                    sessionSummary.LastErrorMessage = messages[i];
                    break;
                }
            }

            return sessionSummary;
        }
        public void Write(string packageId, string sessionId, IEtlLogParser logParser)
        {
            if (logParser == null)
            {
                throw new ArgumentNullException("logParser");
            }

            InitDump();

            var session = logParser.GetEtlSession(packageId, sessionId);
            if (session != null)
            {
                var sessionSummary = GetEtlSessionSummary(session, logParser);
                _dump.Sessions.Add(sessionSummary);
            }
        }
Example #3
0
        public void Write(string packageId, string sessionId, IEtlLogParser logParser)
        {
            if (logParser == null)
            {
                throw new ArgumentNullException("logParser");
            }

            InitDump();

            var session = logParser.GetEtlSession(packageId, sessionId);

            if (session != null)
            {
                var sessionSummary = GetEtlSessionSummary(session, logParser);
                _dump.Sessions.Add(sessionSummary);
            }
        }
        public void Write(EtlSessionQuery query, IEtlLogParser logParser)
        {
            if (query == null)
            {
                throw new ArgumentNullException("query");
            }

            if (logParser == null)
            {
                throw new ArgumentNullException("logParser");
            }

            InitDump();

            var sessions = logParser.GetEtlSessions(query);
            foreach (var session in sessions)
            {
                var sessionSummary = GetEtlSessionSummary(session, logParser);
                _dump.Sessions.Add(sessionSummary);
            }
        }
Example #5
0
        public void Write(EtlSessionQuery query, IEtlLogParser logParser)
        {
            if (query == null)
            {
                throw new ArgumentNullException("query");
            }

            if (logParser == null)
            {
                throw new ArgumentNullException("logParser");
            }

            InitDump();

            var sessions = logParser.GetEtlSessions(query);

            foreach (var session in sessions)
            {
                var sessionSummary = GetEtlSessionSummary(session, logParser);
                _dump.Sessions.Add(sessionSummary);
            }
        }
Example #6
0
        private static EtlSessionSummary GetEtlSessionSummary(EtlSession session, IEtlLogParser logParser)
        {
            var sessionSummary = new EtlSessionSummary
            {
                EtlPackageId     = session.EtlPackageId,
                EtlPackageName   = session.EtlPackageName,
                EtlSessionId     = session.EtlSessionId,
                StartDateTime    = session.StartDateTime,
                StartUtcDateTime = session.StartUtcDateTime,
                EndDateTime      = session.EndDateTime,
                EndUtcDateTime   = session.EndUtcDateTime,
                Status           = session.Status,
                UserName         = session.UserName,
            };

            var variables = logParser.GetEtlVariables(session.EtlPackageId, session.EtlSessionId);

            sessionSummary.Variables.AddRange(variables);

            var counters = logParser.GetEtlCounters(session.EtlPackageId, session.EtlSessionId);

            sessionSummary.Counters.AddRange(counters);

            var messages = logParser.GetEtlMessages(session.EtlPackageId, session.EtlSessionId);

            sessionSummary.Messages.AddRange(messages);

            for (var i = messages.Length - 1; i >= 0; i--)
            {
                if (messages[i].MessageType == EtlMessageType.Error)
                {
                    sessionSummary.LastErrorMessage = messages[i];
                    break;
                }
            }

            return(sessionSummary);
        }
 public MultiEtlAgent(IEtlAgent[] etlAgents)
 {
     _etlAgents = etlAgents ?? new IEtlAgent[0];
     _logParser = new _LogParser(_etlAgents);
 }