Grafana Table Panel のカラムに画像を表示する

2020/07/09時点のGrafanaの最新版のv7.0.5だと、デフォルトだと画像が表示できない。

ちょっと設定が面倒なのとまだ出たばっかであんまりネットに情報が転がってないのでメモ。

 

なぜデフォルトで表示ができないのか

Grafana 7系でSanitize HTML設定ができなくなったから。

下記のようなissueもある。

 

Add Grafana 7 cell style to show sanitized HTML #24482

https://github.com/grafana/grafana/issues/24482

 

 

表示方法

tableのtypeをtable-oldにしてSanitize HTMLの設定が使えるようにする。

やり方は下記。

 

ダッシュボードの設定を開く

f:id:yamekodev:20200709223112p:plain

 

JSON Modelを開き、"type":"table"を"type":"table-old"に変更してSave

f:id:yamekodev:20200709223159p:plain

 

③PanelのEdit→右側のPanel設定タブ→Column Style→ Type

 Stringを選ぶとSanitize HTMLの設定が出てくるのでON→Save

f:id:yamekodev:20200709223328p:plain

 

④HTMLタグ文字列をDBからひっぱってくればそれを解釈して画像が表示される。

例:<img src="/img/test.png">

 

つまり、SELECT Columnで指定するのは画像そのものではなく、画像を表示するためのHTMLタグ文字列。

前もってそれをDBに登録しておく必要がある。

f:id:yamekodev:20200709224752p:plain

 

以上です。