Exemplo n.º 1
0
        public void ShouldResolveImageTagWhenImageNameIsNotSet()
        {
            var date = DateTimeOffset.UtcNow.AddHours(-1);
            var dockerRunLine = DockerRunParamsBuilder.BuildDockerLogLine(
                "testContainer",
                ":1.0",
                "test-services",
                "test",
                date,
                42.ToString(),
                4242.ToString()).AsSpan();

            var dockerRunParameters = LogExtractor.Extract(dockerRunLine);

            Assert.Empty(dockerRunParameters.ImageName.ToString());
            Assert.Equal("1.0", dockerRunParameters.ImageTag.ToString());
        }
Exemplo n.º 2
0
        public void ShouldHaveEmptyContainerOrServiceNameWhenNotProvided()
        {
            var date = DateTimeOffset.UtcNow.AddHours(-1);
            var dockerRunLine = DockerRunParamsBuilder.BuildDockerLogLine(
                null,
                "test:1.0",
                null,
                "test",
                date,
                42.ToString(),
                4242.ToString()).AsSpan();

            var dockerRunParameters = LogExtractor.Extract(dockerRunLine);

            Assert.Empty(dockerRunParameters.ContainerName.ToString());
            Assert.Empty(dockerRunParameters.ServiceName.ToString());
        }
Exemplo n.º 3
0
        public void ShouldHaveEmptyImageAndTagWhenTheyAreNotProvided()
        {
            var date = DateTimeOffset.UtcNow.AddHours(-1);
            var dockerRunLine = DockerRunParamsBuilder.BuildDockerLogLine(
                "testContainer",
                null,
                "test-services",
                "test",
                date,
                42.ToString(),
                4242.ToString()).AsSpan();

            var dockerRunParameters = LogExtractor.Extract(dockerRunLine);

            Assert.Empty(dockerRunParameters.ImageName.ToString());
            Assert.Empty(dockerRunParameters.ImageTag.ToString());
        }
Exemplo n.º 4
0
        public void ShouldResolveOutboundPortOnly()
        {
            var date = DateTimeOffset.UtcNow.AddHours(-1);
            var dockerRunLine = DockerRunParamsBuilder.BuildDockerLogLine(
                "testContainer",
                "test:1.0:invalidTag",
                "test-services",
                "test",
                date,
                string.Empty,
                42.ToString()).AsSpan();

            var dockerRunParameters = LogExtractor.Extract(dockerRunLine);

            Assert.Equal(-1, dockerRunParameters.InboundPort);
            Assert.Equal(42, dockerRunParameters.OutboundPort);
        }
Exemplo n.º 5
0
        public void ShouldReturnNegativeOneWhenPortsDontHaveNumericValues()
        {
            var date = DateTimeOffset.UtcNow.AddHours(-1);
            var dockerRunLine = DockerRunParamsBuilder.BuildDockerLogLine(
                "testContainer",
                "test:1.0:invalidTag",
                "test-services",
                "test",
                date,
                null,
                "not-a-number").AsSpan();

            var dockerRunParameters = LogExtractor.Extract(dockerRunLine);

            Assert.Equal(-1, dockerRunParameters.InboundPort);
            Assert.Equal(-1, dockerRunParameters.OutboundPort);
        }
Exemplo n.º 6
0
        public static void EDChecker()
        {
            string EDname  = "EDLaunch";
            string EDname2 = "EliteDangerous64";

            if (Process.GetProcessesByName(EDname).Length >= 1)
            {
                Console.WriteLine("ED Launch is running");
            }
            else
            {
                Console.WriteLine("ED Lanuch is not running");
                //return;
            }
            if (Process.GetProcessesByName(EDname2).Length >= 1)
            {
                Console.WriteLine("ED 64 is running");
                EDlogReader.Reader();
                LogExtractor.Read();
                Parser.JSONHandler();
            }
            else
            {
                Console.WriteLine("ED 64 is not running");
                EDlogReader.Reader();
                LogExtractor.Read();
                Parser.JSONHandler();
                //return;
            }

            //  此处由于开发需要把return注释掉了,由于log是需要在游戏启动之后才会生成,所以需要等待游戏启动
            //  当然这个步骤是在我的思路下写出来的,我还没去研究其他类似软件的源码

            //返回到console,等待调用方法

            //if (Process.GetProcessesByName = true) ;
            //Process[] EDrunning = Process.GetProcessesByName(EDname);
            //double test = int.Parse(EDrunning);
            //Console.WriteLine(EDrunning);
            //double test = Process.GetProcessesByName(EDname);
            //string test = Process[]GetProcessesByName(EDname);
            //if (Process.GetProcessesByName(EDname) = 0)
            //{}
            //以上是已经弃用的代码
        }
Exemplo n.º 7
0
        public Task <ExtractDockerRunParamsResponse> Handle(ExtractDockerRunParamsRequest request, CancellationToken cancellationToken)
        {
            _logger.LogDebug(LogDockerLogLineReceived, request.LogLine);

            var metadata = LogExtractor.Extract(request.LogLine);

            return(Task.FromResult(
                       new ExtractDockerRunParamsResponse
            {
                ServiceName = metadata.ServiceName.ToString(),
                ContainerName = metadata.ContainerName.ToString(),
                ImageName = metadata.ImageName.ToString(),
                ImageTag = metadata.ImageTag.ToString(),
                InboundPort = metadata.InboundPort.ToString(),
                OutboundPort = metadata.OutboundPort.ToString(),
                EventDate = metadata.Date
            }));
        }
Exemplo n.º 8
0
        public void ShouldExtractCorrectParameters()
        {
            var date = DateTimeOffset.UtcNow.AddHours(-1);
            var dockerRunLine = DockerRunParamsBuilder.BuildDockerLogLine(
                "testContainer",
                "test:1.0",
                "test-service",
                "test",
                date,
                42.ToString(),
                4242.ToString()).AsSpan();

            var dockerRunParameters = LogExtractor.Extract(dockerRunLine);

            Assert.Equal("testContainer", dockerRunParameters.ContainerName.ToString());
            Assert.Equal("test", dockerRunParameters.ImageName.ToString());
            Assert.Equal("1.0", dockerRunParameters.ImageTag.ToString());
            Assert.Equal("test-service", dockerRunParameters.ServiceName.ToString());
            Assert.Equal(42, dockerRunParameters.InboundPort);
            Assert.Equal(4242, dockerRunParameters.OutboundPort);
            Assert.Equal(date, dockerRunParameters.Date);
        }
Exemplo n.º 9
0
 public void Extract2()
 {
     _ = LogExtractor.Extract(Data);
 }