Power BI 系列 -流数据 实时统计流数据


演示效果

 

操作步聚

1.创建流数据集 ,打开POWER BI , 进入工作区,点网页左上方 "创建"选择流数据集,并按下面图进行操作.

 

 

 

 

 

 

 

 

 

 

 

 其中网页URL 

https://api.powerbi.cn/beta/401fb29b-4a28-45ff-b60f-10ccea5c6af7/datasets/d188c4d5-66a4-4f47-b1cb-a3a31903e6d6/rows?language=zh-CN&key=vhu2thGIs3ibpF4IyDVvc7q69eBaGLYY%2Bqsaz6iXfqKQ6aievEdv2ULKrb8xZA5Y5UCs9DYbn2Z5%2FB1AiYBf4g%3D%3D

power shell 调用代码如下:

$endpoint = "https://api.powerbi.cn/beta/401fb29b-4a28-45ff-b60f-10ccea5c6af7/datasets/d188c4d5-66a4-4f47-b1cb-a3a31903e6d6/rows?language=zh-CN&key=vhu2thGIs3ibpF4IyDVvc7q69eBaGLYY%2Bqsaz6iXfqKQ6aievEdv2ULKrb8xZA5Y5UCs9DYbn2Z5%2FB1AiYBf4g%3D%3D"
$payload = @{
"CPU" =98.6
"Memory" =98.6
"MonitorDt" ="2020-06-07T15:04:16.380Z"
}
Invoke-RestMethod -Method Post -Uri "$endpoint" -Body (ConvertTo-Json @($payload))

 

2.打开POWER SHELL 复制以上代码,到power shell中. 若无错误信息,表示调用成功, 上面就是一个用power shell代码的事例.

 

 

 

3. 创建Dashboard,ashboard,选创建一个报表,里面包含简单的图表. 以下内容就是刚才创建的,点图表连接下面红色框中内容,进行在线创建图表.

 

 

开发完报表如图所示,并且选中图钉 下图红色框内,

 

 

 

 

 

 

 

 

 

 

C#代码

通过C#代码来实现刚才power shell推送数据的功能.

c#代码如下:

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace PowerBIStream
{
    
    class Program
    {    
     
        static void Main(string[] args)
        {
            //1.以后要替换的,每个都不一样
            string EndPoint = "https://api.powerbi.cn/beta/401fb29b-4a28-45ff-b60f-10ccea5c6af7/datasets/361f7c2b-aa44-4150-8d4d-80a3785ad3ad/rows?language=zh-CN&key=AMigWo1at7dz1a5nxr9VrXBWEInO5j5a1ciNuXXdIKnj3CfWT7uNOmsskbRQ6c5gfFTaswcSwqF9uieW43oOsw%3D%3D";


            do
            {
                MonitorInfo info = new MonitorInfo();

                //2.发送JSON 数据,(CPU,内存,时间)
                var payload = new
                {
                    CPU = info.CPU,
                    Memory = info.Memory,
                    MonitorDt = System.DateTime.Now.ToLongTimeString()
                  
                };

                var jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(payload);
                using (var wc = new WebClient())
                {
                    wc.Headers.Add("Content-Type", "application/json");
                    wc.UploadString(EndPoint, "POST", "[" + jsonString + "]");
                    Console.WriteLine(jsonString);
                }
                Thread.Sleep(500);
            } while (true);
                       
        }


        class MonitorInfo
        {
            public float Memory;
            public float CPU;

            public MonitorInfo()
            {
                PerformanceCounter cpuCounter;
                PerformanceCounter ramCounter;

                cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
                cpuCounter.CounterName = "% Processor Time";    
                ramCounter = new PerformanceCounter("Memory", "Available MBytes");
                CPU = cpuCounter.NextValue();
                Thread.Sleep(500);
                CPU = cpuCounter.NextValue();
                Memory = ramCounter.NextValue();
            }


        }

    }
}
    

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM