Grafana 世界地图面板:mysql 中的经纬度无法在地图上显示点

Grafana worldmap panel: latitude and longitude in mysql cannot display points on map

我在 Grafana v5.4.2 上使用世界地图面板,我的数据源是一个 mysql 数据库,我有一些 ip 地址、城市和位置字符串以及经纬度,我想显示ip地址的城市名,值就是属于一个城市的ip地址数,下面是我的sql:

SELECT
    any_value(city.city) as metric,
    count(ip.loc) as value,
    CAST(substring(ip.loc, 1, INSTR(ip.loc, “,”) - 1) AS DECIMAL(10,6)) as latitude,
    CAST(substring(ip.loc, INSTR(ip.loc, “,”) + 1) AS DECIMAL(10,6)) as longitude,
    UNIX_TIMESTAMP(now()) as time_sec
FROM ip
    inner join city on city.ctid = ip.ctid
WHERE ip.iptype & 2
group by ip.loc

我可以通过 sql 查询得到响应,响应如下所示,但地图上没有任何显示:

xhrStatus:“complete”
request:Object
method:“POST”
url:“api/tsdb/query”
data:Object
from:“1541896435220”
to:“1547534884686”
queries:Array[1]
response:Object
results:Object
A:Object
refId:“A”
meta:Object
series:Array[516]
0:Object
1:Object
2:Object
3:Object
    name:“巴西 巴西 value”
    points:Array[1]
        0:Array[1,1547534884000]
4:Object
5:Object
6:Object
7:Object

以下是mysql的裁决结果:
±--------±--------±------------±------------±-------- -+
|公制 |价值 |纬度 |经度 | time_sec |
±--------±--------±------------±------------±-------- -+
|巴西 巴西 | 1 | -14.242900 | -54.387798 | 1547535460 |
|巴西圣保罗州圣保罗 | 1 | -23.550520 | -46.633309 | 1547535460 |
|新加坡 新加坡 | 16 | 1.352083 | 103.819836 | 1547535460 |
|越南 越南 | 1 | 10.768451 | 106.694363 | 1547535460 |
|柬柏寔 柬柏寔 | 7 | 12.547730 | 104.983856 | 1547535460 |

谁能告诉我发生了什么事?

将 "Format as" 更改为 "Table" 并从我的 sql 中删除 "metric" 后,它会在地图上打印点。 不幸的是,它仍然不完美,因为当鼠标点击这些点时会有 "n/a" 显示,我期待城市名称之类的东西,这就是为什么我把城市作为公制...需要更多调查...

您的贡献帮助了我使用 WorldMap。 我会尽力帮助你解决你的问题(不幸的是,它仍然不完美,因为当鼠标点击这些点时有 "n/a" 显示)。

首先:我的源数据来自 Postgresql。我有一张桌子用来保存坐标 Coordinates Table

第二:我的 sql 查询是: SQL query and result from query: result

三:我的世界地图设置 worldmap settings

FINALe:工作世界地图 REsULT