public void MetricHelperShouldParseMillicores()
        {
            var result = MetricHelper.ParseCPUUnit("62662558m");

            Assert.AreEqual(result.Value, 62662558);
            Assert.AreEqual(result.BaseValue, 626625580);
            Assert.AreEqual(result.Unit, "Millicores");
        }
Exemple #2
0
        public async Task Handle(MetricQueryRequest <NodeCPUUsageWidget> request, CancellationToken cancellationToken)
        {
            var nodeCPUUsageWidget = request.DataContext;

            var client = kubernetesHelper.GetKubernetesClient(nodeCPUUsageWidget);

            var metricsResponse = await client.GetNodeMetricsAsync(nodeCPUUsageWidget.NodeName, cancellationToken);

            if (metricsResponse.IsValid)
            {
                var metric = MetricHelper.ParseCPUUnit(metricsResponse.Usage.CPU);
                request.DataContext.Value = metric.BaseValue;
                request.DataContext.State = State.Ok;
            }
            else
            {
                nodeCPUUsageWidget.State = State.Invalid;
            }
        }