Example #1
0
        public IAgentHost Build()
        {
            AgentId.VerifyNotNull(nameof(AgentId));
            ProbeFactory.VerifyNotNull(nameof(ProbeFactory));
            TraceContainer.VerifyNotNull(nameof(TraceContainer));
            LoggerFactory.VerifyNotNull(nameof(LoggerFactory));

            var monitoringJobs = Targets
                                 .VerifyNotNull(nameof(Targets))
                                 .Select(x => (Target: x, Probe: ProbeFactory.Create(x, AgentId, TraceContainer)))
                                 .Select(x => new MonitoringJob(x.Target, x.Probe, LoggerFactory.CreateLogger <MonitoringJob>()))
                                 .ToArray();

            return(new AgentHost(monitoringJobs, LoggerFactory.CreateLogger <AgentHost>()));
        }
Example #2
0
        public static void WriteTraceFile(string filename, Stream stream)
        {
            try
            {
                bool created = TraceContainer.CreateIfNotExist();
                if (created == true)
                {
                    TraceLog.TraceInfo("Created container " + TraceContainerName);
                }

                var blob = TraceContainer.GetBlobReference(filename);
                blob.UploadFromStream(stream);
                TraceLog.TraceInfo(String.Format("Uploaded trace file {0}", filename));
            }
            catch (Exception ex)
            {
                TraceLog.TraceException(String.Format("Failed to upload trace file {0}", filename), ex);
            }
        }