你需要這么一款開(kāi)源數(shù)據(jù)可視化工具助力數(shù)據(jù)跟蹤分析

場(chǎng)景

文章開(kāi)頭,先做個(gè)小調(diào)查:平常工作中遇到需要追蹤或者分析公司日常業(yè)務(wù)數(shù)據(jù)的時(shí)候【比如需要分析系統(tǒng)每日用戶增長(zhǎng)情況】,你們一般是使用怎么樣的分析手段呢?大家可以先想想自己是怎么做的,這樣的做法是否繁瑣,有沒(méi)有更好的方案。

在沒(méi)遇到 Grafana 之前,遇到產(chǎn)品需要這個(gè)數(shù)據(jù)的時(shí)候,由于公司人力有限,沒(méi)有開(kāi)發(fā)人員開(kāi)發(fā)數(shù)據(jù)平臺(tái),所以一般有幾種處理方案:

  1. 第一種方案,如果本身 APP 端有接入一些第三方數(shù)據(jù)統(tǒng)計(jì)平臺(tái)【友盟、Bugly】,則可以讓產(chǎn)品直接在這些平臺(tái)看數(shù)據(jù),缺點(diǎn)是:這種平臺(tái)的數(shù)據(jù)一般是指下載 APP 的,并非是真實(shí)的平臺(tái)注冊(cè)數(shù);
  2. 第二種方案,平臺(tái)的精確的注冊(cè)數(shù)據(jù):每次寫一下 Sql 語(yǔ)句按天分組直接從數(shù)據(jù)庫(kù)導(dǎo)出產(chǎn)品需要時(shí)間內(nèi)的用戶注冊(cè)情況,然后導(dǎo)出一個(gè) Excel 表格給到產(chǎn)品,產(chǎn)品在做成可視化的折線圖之類的來(lái)分析波動(dòng)情況;
  3. 第三種方案,可能相對(duì)少一些重復(fù)工作,用 Python 腳本程序自動(dòng)導(dǎo)出可視化結(jié)果圖;

Grafana 登場(chǎng)

木有錯(cuò),今天要介紹的主角是:Grafana,它是什么呢?Grafana 是一個(gè)通用的可視化 Go 編寫的開(kāi)源工具,通用的意思也就是說(shuō)你可以添加各種數(shù)據(jù)源【不過(guò)得是目前支持的數(shù)據(jù)源,具體支持哪些數(shù)據(jù)源,后面會(huì)講到】,安裝部署也是非常非常的簡(jiǎn)單,基本是一條命令即可部署,以 mac 系統(tǒng)為例:

brew update
brew install grafana
brew services start grafana

是的,就是這么簡(jiǎn)單,經(jīng)過(guò)三條命令,我們本地的系統(tǒng)已經(jīng)部署好了,這時(shí)訪問(wèn):http://127.0.0.1:3000即可訪問(wèn)到部署好的 grafana,默認(rèn)賬號(hào)密碼是:admin/admin,進(jìn)去之后我們可以像堆積木一樣一步步增加我們業(yè)務(wù)的數(shù)據(jù)看板,支持各種形式的展示方式:表格、曲線、餅狀圖等。

我們先來(lái)一個(gè)圖,看一下官方的 LiveDemo 數(shù)據(jù)圖,一睹驚艷的展示方式【哈,驚不驚艷的不重要,重要的是實(shí)用】:

官方 LiveDemo

第一步:安裝 Grafana

由于我的環(huán)境是 mac,所以這里只列出 mac 上通過(guò) brew 的方式安裝詳情(其他系統(tǒng)安裝可以參考官方給出的詳細(xì)操作方式
):

~ ? brew install grafana
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/grafana-6.3.3.mojave.bottle.tar.gz
Already downloaded: /Users/zhangdeyi/Library/Caches/Homebrew/downloads/2087dc91f087ca0d1314958797e3ef2696c575f081afb810393f74648d47942b--grafana-6.3.3.mojave.bottle.tar.gz
==> Pouring grafana-6.3.3.mojave.bottle.tar.gz
Warning: grafana dependency icu4c was built with a different C++ standard
library (libc++ from clang). This may cause problems at runtime.
==> Caveats
To have launchd start grafana now and restart at login:
  brew services start grafana
Or, if you don't want/need a background service you can just run:
  grafana-server --config=/usr/local/etc/grafana/grafana.ini --homepath /usr/local/share/grafana --packaging=brew cfg:default.paths.logs=/usr/local/var/log/grafana cfg:default.paths.data=/usr/local/var/lib/grafana cfg:default.paths.plugins=/usr/local/var/lib/grafana/plugins
==> Summary
??  /usr/local/Cellar/grafana/6.3.3: 3,635 files, 171.8MB

第二步:添加數(shù)據(jù)源

安裝完之后,可以根據(jù)自己的實(shí)際情況,先添加自己業(yè)務(wù)的數(shù)據(jù)源,一般常用的數(shù)據(jù)源是 MySQL:

添加一個(gè)MySQL的數(shù)據(jù)源

初次安裝只包含了這些數(shù)據(jù)源類型:
默認(rèn)支持的數(shù)據(jù)源

當(dāng)然也可以安裝一些其他數(shù)據(jù)源的 plugins 來(lái)支持更多的:數(shù)據(jù)源

第三步: 新增我們的業(yè)務(wù) Dashboard

有了數(shù)據(jù)源之后,就可以增加業(yè)務(wù) Dashboard,入口:主頁(yè) --> ?號(hào) --> Create Dashboard,比如我把 Dashboard 命名成 MyCoreData,一個(gè) Dashboard 可以由不同展示類型的 Panel 組成:

Panel 類型

平常我用得比較多的是 Graph,這個(gè)展示形式比較方便看出業(yè)務(wù)數(shù)據(jù)的波動(dòng)情況:
Panel 操作菜單

點(diǎn)擊操作菜單的 Edit 即可進(jìn)入面板的編輯模式,這個(gè)模式可以對(duì)面板重命名,編寫業(yè)務(wù)SQL,展示細(xì)節(jié)調(diào)整,編輯面板如下所示:

編輯面板

  • General tab 可以設(shè)置面板的標(biāo)題信息、表述信息等;
  • Metrics tab 可以選擇數(shù)據(jù)源,編寫SQL 語(yǔ)句:有兩種模式,一種是手動(dòng)選操作,另外一種是直接編寫 SQL 模式【推薦用這種模式】,點(diǎn)擊 Show Help 可以查看提供的內(nèi)置函數(shù):
    內(nèi)置的函數(shù)

    編寫完 SQL 之后,展示形式是這樣的(時(shí)間選擇的是這個(gè)月的):
    Graph 展示形式

    這種展示形式已經(jīng)大致能看出趨勢(shì),是否可以有更好的展示形式呢,答案是有的,點(diǎn)擊 Legend tab 可以設(shè)置展示一些更加詳細(xì)的形式,比如用 table 的形式,展示出 totalavg,current 這些值,最終效果如下所示:
    更加形象的展示

    當(dāng)然還有其他更細(xì)節(jié)的設(shè)置,可以自行探索,其他的面板展示形式也可以自行探索;

第五步:分配賬號(hào),并管理好不同賬號(hào)的查看權(quán)限

很棒!經(jīng)過(guò)前面一步的:增加業(yè)務(wù) Dashboard,接下來(lái)我們就可以分配賬號(hào)給產(chǎn)品和Boss們,并根據(jù)不同的角色分配不同的 Dashboard 查看權(quán)限。

使用 admin 賬號(hào)登錄,可以分配不同的賬號(hào)權(quán)限,入口:左邊的設(shè)置按鈕 --> Server Admin --> Users --> Add new user,

增加賬號(hào)

具體 Dashboard 的權(quán)限設(shè)置入口:以管理員賬號(hào)訪問(wèn)某個(gè) Dashboard --> 右上角的設(shè)置按鈕 --> Permissions 按鈕 --> Add Permission 即可管理這個(gè) Dashboard 的訪問(wèn)權(quán)限:


Dashboard 權(quán)限管理

最后想說(shuō)的

好啦!當(dāng)我們搭建好這樣一個(gè)平臺(tái)之后,我們不再需要重復(fù)之前的繁瑣的導(dǎo)數(shù)據(jù)工作,而且產(chǎn)品和 Boss 也可以開(kāi)心愉快的實(shí)時(shí)查詢公司的各項(xiàng)業(yè)務(wù)數(shù)據(jù),我們只需要專注在上面添磚加瓦:增加各個(gè)業(yè)務(wù)數(shù)據(jù)的細(xì)分 Dashboard。

今天的安利 Grafana 的文章先寫到這里,寫得相對(duì)比較糙,不少細(xì)節(jié)沒(méi)怎么介紹,不過(guò)今天的主要目的也是為了給大家演示一下如何用這個(gè)平臺(tái)來(lái)提升自己的工作效率,方便同事之間的數(shù)據(jù)溝通工作。

最后的最后,如果你所在的團(tuán)隊(duì)或者公司還沒(méi)有一個(gè)比較完備的數(shù)據(jù)平臺(tái),真心推薦你們可以搭建探索一下(跟進(jìn)業(yè)務(wù)數(shù)據(jù),或者監(jiān)控服務(wù)器運(yùn)行情況都是可以的),如果在探索過(guò)程中有遇到什么問(wèn)題,可以在文章的后面留言,我這邊會(huì)盡量為大家解答。

好啦,祝大家周末愉快,準(zhǔn)備出門吃小龍蝦去啦~~~~~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容