-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Data extrapolation for connected devices #65
Comments
Hi @muenzpraeger, I'm open to additions to the current collected data. If you know where to pull the data from you are more then welcome to create a PR. Please fork from |
Hi @muenzpraeger, Just pushed 0faba89 which reworks your PR a bit. Can you review and test it let me know what you think? I removed the separation between powerline and wifi upstream and downstream values. The regex should now match all cases. |
Also a dashboard is still missing. We should add another "Wifi" Dashboard. |
Change looks good. I can add my dashboard. That's in InfluxQL, but if I recall correctly you're moving to Flux, no? |
Hi, Yes I try to limit maintenance to one type of Dahboards. A Flux Dashboard would be great. |
Hey, I would like to get version 1.1.0 out of the door. Is it ok if I release this version and add the dashboard later? |
Feel free to release. Still reading through Flux documentation... |
Great. Or just post the influx version here (or a PR) and I'll try to convert it to Flux queries |
Actually I've got it working now. 😄 Feel free to adjust as you see fit. {
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- Grafana --"
},
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"target": {
"limit": 100,
"matchAny": false,
"tags": [],
"type": "dashboard"
},
"type": "dashboard"
}
]
},
"editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
"id": 4,
"links": [],
"liveNow": false,
"panels": [
{
"datasource": {
"type": "influxdb",
"uid": "p2cAWORRz"
},
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
"showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
"mode": "none"
},
"thresholdsStyle": {
"mode": "off"
}
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 9,
"w": 12,
"x": 0,
"y": 0
},
"id": 2,
"options": {
"legend": {
"calcs": [],
"displayMode": "list",
"placement": "bottom",
"showLegend": true
},
"tooltip": {
"mode": "single",
"sort": "none"
}
},
"pluginVersion": "9.2.1",
"targets": [
{
"alias": "$col",
"datasource": {
"type": "influxdb",
"uid": "p2cAWORRz"
},
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"name"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "fritzbox",
"orderByTime": "ASC",
"policy": "default",
"query": "from(bucket: v.defaultBucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => (r[\"_value\"]>0 and (r._field == \"active_hosts_upstream\" or r._field == \"active_hosts_downstream\")))\n |> filter(fn: (r) => (r._field == \"active_hosts_upstream\" or r._field == \"active_hosts_downstream\"))\n |> filter(fn: (r) => contains(value: r[\"name\"], set: ${device:json}))\n |> group(columns: [\"_measurement\", \"_field\"])\n |> map(fn: (r) => ({ r with _field: \n if r._field == \"active_hosts_upstream\" then r.name + \" Upstream\" else r.name + \" Downstream\"\n }))\n |> map(fn: (r) => ({\n _time: r._time,\n _field: r._field,\n _value: r._value\n }))\n\n\n\n",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"active_hosts_name"
],
"type": "field"
},
{
"params": [
"alias"
],
"type": "alias"
}
]
],
"tags": []
}
],
"title": "Connection Speed",
"type": "timeseries"
}
],
"refresh": false,
"schemaVersion": 37,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"current": {
"selected": true,
"text": [
"Ella-iPhone",
"Badezimmer"
],
"value": [
"Ella-iPhone",
"Badezimmer"
]
},
"datasource": {
"type": "influxdb",
"uid": "p2cAWORRz"
},
"definition": "from(bucket: v.defaultBucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => (r[\"_value\"]>0 and (r._field == \"active_hosts_upstream\" or r._field == \"active_hosts_downstream\")))\n |> map(fn: (r) => ({\n label: r.name\n }))\n\n\n\n",
"hide": 0,
"includeAll": true,
"label": "Device",
"multi": true,
"name": "device",
"options": [],
"query": "from(bucket: v.defaultBucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => (r[\"_value\"]>0 and (r._field == \"active_hosts_upstream\" or r._field == \"active_hosts_downstream\")))\n |> map(fn: (r) => ({\n label: r.name\n }))\n\n\n\n",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 0,
"type": "query"
}
]
},
"time": {
"from": "now-7d",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Connection over time",
"uid": "FlGAWdggk",
"version": 25,
"weekStart": ""
} |
Thank you for the dashboard. I get the idea but need to rework it a bit. Also couldn't import the dashboard because the uuid for the datasource was not found. The issue is, you have to set the export to "extern" so it can be imported by other people. I think this is a silly option which should be the default, but is isn't. I will have a look into a Wifi dashboard the next few days. |
Hello, Dashboard Connection over time:
But I noticed something. I use a FritzBox 7590 and a FRITZ!WLAN Repeater 1160. Question, new problem or can this be managed by configuration? |
Sorry for not working on this. It is currently blocked by this issue #114. I need to find a good way forward with influxDB as I don't like to repeat everything once again. Any ideas from your side? |
I was wondering if you're open to add some more data extrapolation capabilities for active devices to the project.
Specifically:
Alternatively maybe an option to use a config file with additional services that would then be merged at runtime into the built-in config.
Happy to provide a PR for any of that.
The text was updated successfully, but these errors were encountered: