Esempio n. 1
0
        public static void Main(string[] args)
        {
            Console.WriteLine($"What would you like to do \n 1. Start monitoring a docker container. \n 2. Query Elasticsearch for perf data of container");
            var chosenValue = Console.ReadLine();

            switch (chosenValue)
            {
            case "1":
            {       // Connect to docker and start collecting data
                DockerConnect connect = new DockerConnect();
                connect.ConnectToDocker();
                break;
            }

            case "2":
            {
                // Initialize the es client and look for data given the container name
                ElasticsearchClient esClient = new ElasticsearchClient();
                Console.WriteLine("Enter the container name to get perf data for");
                var name     = Console.ReadLine();
                var response = esClient.Search(name);
                if (response.Count == 0)
                {
                    Console.WriteLine("No data found");
                }
                else
                {
                    foreach (var perfData in response)
                    {
                        Console.WriteLine($"Timestamp: {perfData.Timestamp}, " +
                                          $"CPU Usage: {perfData.TotalCpuUsage}, Memory Usage: {perfData.TotalMemoryUsage}");
                    }
                }


                break;
            }

            default:
            {
                Console.WriteLine("Incorrect value");
                break;
            }
            }

            Console.ReadLine();
        }
 /// <summary>
 /// Constructor - initializes elasticsearch client
 /// </summary>
 public DockerConnect()
 {
     _elasticClient = new ElasticsearchClient();
 }