本系統旨在提供業務監控實時數據和歷史數據以及報表、閾值報警、同比增長分析等一體化的歷史業務數據解決方案。 技術選型 sdk部門有C#版和java版,api和website採用golang語音開發,資料庫採用mysql,數據傳輸採用socket+http 架構設計 本系統主要分3個部分:即sdk(@2 ...
Medivh監控系統-
系統介紹
本系統旨在提供業務監控實時數據和歷史數據以及報表、閾值報警、同比增長分析等一體化的歷史業務數據解決方案。
技術選型
sdk部門有C#版和java版,api和website採用golang語音開發,資料庫採用mysql,數據傳輸採用socket+http
架構設計
系統源碼
本系統主要分3個部分:即sdk(@2) api(@1) 和 website(@3) 。
3個分系統源代碼下載地址:
@3 =>website https://github.com/larrymshi/medivh.website
@2 =>sdk .net版本 https://github.com/larrymshi/medivh.client-csharp
@2 =>sdk java版本 https://github.com/larrymshi/medivh.client-java
@1 =>api https://github.com/larrymshi/medivh.api
使用和接入文檔整理中~!
接入示例 (C#)
code
//初始化日誌記錄器 並設置日誌級別(0info 1debug)
MedivhSdk.SetLogger(Log, 1); //初始化配置對象 MedivhConfig config = new MedivhConfig(); //設置應用信息(AppName,AppKey,AppSecret 是申請的,切AppKey不能重覆) config.Client = new ClientInfo() { AppName = "**監控測試NO1", AppKey = "aaaaaaaaaaaaaaaaaa", AppSecret = "..." }; config.ServerIp = "127.0.0.1";//api的地址 config.ServerPort = 5000;//api的埠 //初始化medivh引擎 MedivhSdk.Init(config); //以上是監控系統初始化完畢,現在開始使用業務計數器 //業務計數器,根據需要設置業務級別 MedivhSdk.OnceCounter.BusinessCounter("業務1", 1); //自定義計數器 MedivhSdk.OnceCounter.CustomCounter("自定義" + i % 5, 1);
接入示例JAVA版
public class App { public static void main(String[] args) throws InterruptedException { MedivhConfig config = new MedivhConfig(new ClientInfo("test", "qweasdzxc", "123"), "192.168.155.106", 5000); MedivhSdk.setLogger(new MedivhLog()); MedivhSdk.init(config); Loghelper.info("啟動完成!"); test(); } private static void test() throws InterruptedException { int i = 0; while (true) { i++; //業務計數器 MedivhSdk.getOnceCounter().businessCounter("biz" + i % 7, 1); ////自定義計數器 MedivhSdk.getOnceCounter().cstcomCounter("cust" + i % 7, 1); //Console.Write(". "); Thread.sleep(50); } } static class MedivhLog implements IMedivhLogable { @Override public void log(String msg) { System.out.println("Logger:" + msg); } } }
以上代碼完成了應用伺服器sdk的接入,產生的數據會推送到api伺服器上,並且由website定時獲取同步到資料庫中
API伺服器配置
編譯運行main.go(需設定golang環境,或直接運行編譯後的文件).預設api占用8080埠作為http伺服器,占用5000埠作為tcp服務。可在conf/app.conf裡面修改。
website配置
1》website採用資料庫為mysql(在conf/app.conf裡面修)
2》編譯或運行main.go.然後訪問 http://localhost:8081 即可訪問實時數據和歷史數據報表。
3》外部報表僅提供api數據
原創作品,有不同的想法歡迎討論。