Commit a68a37b0 by amir

config files

parent 89d806ed
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
},
{
"datasource": "influx-local",
"enable": false,
"iconColor": "rgba(255, 96, 96, 1)",
"name": "ann1",
"query": "SELECT id, units from speed WHERE $timeFilter"
}
]
},
"editable": true,
"gnetId": null,
"graphTooltip": 0,
"hideControls": false,
"id": 2,
"links": [],
"refresh": "30s",
"rows": [
{
"collapse": false,
"height": 224,
"panels": [
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "influx-local",
"editable": true,
"error": false,
"fill": 1,
"grid": {},
"id": 2,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 1,
"links": [],
"nullPointMode": "connected",
"percentage": false,
"pointradius": 2,
"points": true,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"span": 4,
"stack": false,
"steppedLine": false,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"auto"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT first(\"value\") FROM \"mcx_db\".\"autogen\".\"speed\" WHERE \"id\" = '$lanes' and $timeFilter GROUP BY time($interval) FILL(null)",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT HOLT_WINTERS(FIRST(\"value\"),20,5) FROM \"mcx_db\".\"autogen\".\"speed\" WHERE \"id\" = '$lanes' and $timeFilter GROUP BY time($interval)",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeFrom": null,
"timeShift": null,
"title": "Speed and Predicted",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"transparent": false,
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
]
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "influx-local",
"editable": true,
"error": false,
"fill": 1,
"grid": {},
"id": 5,
"legend": {
"alignAsTable": false,
"avg": false,
"current": false,
"max": false,
"min": false,
"rightSide": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"percentage": false,
"pointradius": 2,
"points": true,
"renderer": "flot",
"seriesOverrides": [],
"spaceLength": 10,
"span": 4,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "speed(mph)",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT first(value) FROM speed where \"id\" = '$lanes' and $timeFilter GROUP BY time($interval) ",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"alias": "vehicleCount",
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT first(value) FROM vehicleCount where \"id\" = '$lanes' and $timeFilter GROUP BY time($interval) ",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": [],
"timeFrom": null,
"timeShift": null,
"title": "Speed & Count",
"tooltip": {
"msResolution": true,
"shared": true,
"sort": 0,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
]
},
{
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"datasource": "influx-local",
"decimals": 2,
"editable": true,
"error": false,
"fontSizes": [
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
22,
24,
26,
28,
30,
32,
34,
36,
38,
40,
42,
44,
46,
48,
50,
52,
54,
56,
58,
60,
62,
64,
66,
68,
70
],
"fontTypes": [
"Arial",
"Avant Garde",
"Bookman",
"Consolas",
"Courier",
"Courier New",
"Garamond",
"Helvetica",
"Open Sans",
"Palatino",
"Times",
"Times New Roman",
"Verdana"
],
"format": "none",
"gauge": {
"animateNeedleValueTransition": true,
"animateNeedleValueTransitionSpeed": 100,
"edgeWidth": 0.05,
"gaugeRadius": 0,
"gaugeUnits": "",
"innerCol": "#fff",
"labelFontSize": 18,
"maxNeedleAngle": 320,
"maxTickAngle": 300,
"maxValue": 100,
"minValue": 0,
"needleCol": "#0099CC",
"needleLengthNeg": 0.2,
"needleTickGap": 0.05,
"needleWidth": 5,
"outerEdgeCol": "rgb(33, 124, 164)",
"padding": 0.05,
"pivotCol": "#999",
"pivotRadius": 0.1,
"show": false,
"showLowerThresholdRange": false,
"showMiddleThresholdRange": true,
"showThresholdColorOnValue": false,
"showThresholdOnGauge": false,
"showUpperThresholdRange": true,
"tickColMaj": "#0099CC",
"tickColMin": "#000",
"tickEdgeGap": 0.05,
"tickFont": "Open Sans",
"tickLabelCol": "#000",
"tickLengthMaj": 0.15,
"tickLengthMin": 0.05,
"tickSpaceMajVal": 10,
"tickSpaceMinVal": 1,
"tickWidthMaj": 5,
"tickWidthMin": 1,
"ticknessGaugeBasis": 200,
"unitsFont": "Open Sans",
"unitsLabelCol": "#000",
"unitsLabelFontSize": 22,
"valueYOffset": 0,
"zeroNeedleAngle": 40,
"zeroTickAngle": 60
},
"gaugeDivId": "d3gauge_svg_6",
"id": 6,
"links": [],
"mappingType": 1,
"mappingTypes": [
{
"name": "value to text",
"value": 1
},
{
"name": "range to text",
"value": 2
}
],
"operatorName": "avg",
"operatorNameOptions": [
"min",
"max",
"avg",
"current",
"total",
"name"
],
"rangeMaps": [
{
"from": "null",
"text": "N/A",
"to": "null"
}
],
"span": 2,
"svgContainer": {},
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "speed",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT last(value) FROM speed where \"id\" = '$lanes'",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"thresholds": "",
"tickMaps": [],
"title": "Current Speed",
"type": "briangann-gauge-panel",
"unitFormats": [
{
"submenu": [
{
"click": "menuItemSelected(0,0)",
"text": "none",
"value": "none"
},
{
"click": "menuItemSelected(0,1)",
"text": "short",
"value": "short"
},
{
"click": "menuItemSelected(0,2)",
"text": "percent (0-100)",
"value": "percent"
},
{
"click": "menuItemSelected(0,3)",
"text": "percent (0.0-1.0)",
"value": "percentunit"
},
{
"click": "menuItemSelected(0,4)",
"text": "Humidity (%H)",
"value": "humidity"
},
{
"click": "menuItemSelected(0,5)",
"text": "ppm",
"value": "ppm"
},
{
"click": "menuItemSelected(0,6)",
"text": "decibel",
"value": "dB"
}
],
"text": "none"
},
{
"submenu": [
{
"click": "menuItemSelected(1,0)",
"text": "Dollars ($)",
"value": "currencyUSD"
},
{
"click": "menuItemSelected(1,1)",
"text": "Pounds (£)",
"value": "currencyGBP"
},
{
"click": "menuItemSelected(1,2)",
"text": "Euro (€)",
"value": "currencyEUR"
},
{
"click": "menuItemSelected(1,3)",
"text": "Yen (¥)",
"value": "currencyJPY"
}
],
"text": "currency"
},
{
"submenu": [
{
"click": "menuItemSelected(2,0)",
"text": "Hertz (1/s)",
"value": "hertz"
},
{
"click": "menuItemSelected(2,1)",
"text": "nanoseconds (ns)",
"value": "ns"
},
{
"click": "menuItemSelected(2,2)",
"text": "microseconds (µs)",
"value": "µs"
},
{
"click": "menuItemSelected(2,3)",
"text": "milliseconds (ms)",
"value": "ms"
},
{
"click": "menuItemSelected(2,4)",
"text": "seconds (s)",
"value": "s"
},
{
"click": "menuItemSelected(2,5)",
"text": "minutes (m)",
"value": "m"
},
{
"click": "menuItemSelected(2,6)",
"text": "hours (h)",
"value": "h"
},
{
"click": "menuItemSelected(2,7)",
"text": "days (d)",
"value": "d"
}
],
"text": "time"
},
{
"submenu": [
{
"click": "menuItemSelected(3,0)",
"text": "bits",
"value": "bits"
},
{
"click": "menuItemSelected(3,1)",
"text": "bytes",
"value": "bytes"
},
{
"click": "menuItemSelected(3,2)",
"text": "kilobytes",
"value": "kbytes"
},
{
"click": "menuItemSelected(3,3)",
"text": "megabytes",
"value": "mbytes"
},
{
"click": "menuItemSelected(3,4)",
"text": "gigabytes",
"value": "gbytes"
}
],
"text": "data"
},
{
"submenu": [
{
"click": "menuItemSelected(4,0)",
"text": "packets/sec",
"value": "pps"
},
{
"click": "menuItemSelected(4,1)",
"text": "bits/sec",
"value": "bps"
},
{
"click": "menuItemSelected(4,2)",
"text": "bytes/sec",
"value": "Bps"
},
{
"click": "menuItemSelected(4,3)",
"text": "kilobits/sec",
"value": "Kbits"
},
{
"click": "menuItemSelected(4,4)",
"text": "kilobytes/sec",
"value": "KBs"
},
{
"click": "menuItemSelected(4,5)",
"text": "megabits/sec",
"value": "Mbits"
},
{
"click": "menuItemSelected(4,6)",
"text": "megabytes/sec",
"value": "MBs"
},
{
"click": "menuItemSelected(4,7)",
"text": "gigabytes/sec",
"value": "GBs"
},
{
"click": "menuItemSelected(4,8)",
"text": "gigabits/sec",
"value": "Gbits"
}
],
"text": "data rate"
},
{
"submenu": [
{
"click": "menuItemSelected(5,0)",
"text": "ops/sec (ops)",
"value": "ops"
},
{
"click": "menuItemSelected(5,1)",
"text": "reads/sec (rps)",
"value": "rps"
},
{
"click": "menuItemSelected(5,2)",
"text": "writes/sec (wps)",
"value": "wps"
},
{
"click": "menuItemSelected(5,3)",
"text": "I/O ops/sec (iops)",
"value": "iops"
}
],
"text": "throughput"
},
{
"submenu": [
{
"click": "menuItemSelected(6,0)",
"text": "millimetre (mm)",
"value": "lengthmm"
},
{
"click": "menuItemSelected(6,1)",
"text": "meter (m)",
"value": "lengthm"
},
{
"click": "menuItemSelected(6,2)",
"text": "kilometer (km)",
"value": "lengthkm"
},
{
"click": "menuItemSelected(6,3)",
"text": "mile (mi)",
"value": "lengthmi"
}
],
"text": "length"
},
{
"submenu": [
{
"click": "menuItemSelected(7,0)",
"text": "m/s",
"value": "velocityms"
},
{
"click": "menuItemSelected(7,1)",
"text": "km/h",
"value": "velocitykmh"
},
{
"click": "menuItemSelected(7,2)",
"text": "mph",
"value": "velocitymph"
},
{
"click": "menuItemSelected(7,3)",
"text": "knot (kn)",
"value": "velocityknot"
}
],
"text": "velocity"
},
{
"submenu": [
{
"click": "menuItemSelected(8,0)",
"text": "millilitre",
"value": "mlitre"
},
{
"click": "menuItemSelected(8,1)",
"text": "litre",
"value": "litre"
},
{
"click": "menuItemSelected(8,2)",
"text": "cubic metre",
"value": "m3"
}
],
"text": "volume"
},
{
"submenu": [
{
"click": "menuItemSelected(9,0)",
"text": "watt (W)",
"value": "watt"
},
{
"click": "menuItemSelected(9,1)",
"text": "kilowatt (kW)",
"value": "kwatt"
},
{
"click": "menuItemSelected(9,2)",
"text": "volt-ampere (VA)",
"value": "voltamp"
},
{
"click": "menuItemSelected(9,3)",
"text": "kilovolt-ampere (kVA)",
"value": "kvoltamp"
},
{
"click": "menuItemSelected(9,4)",
"text": "volt-ampere reactive (var)",
"value": "voltampreact"
},
{
"click": "menuItemSelected(9,5)",
"text": "watt-hour (Wh)",
"value": "watth"
},
{
"click": "menuItemSelected(9,6)",
"text": "kilowatt-hour (kWh)",
"value": "kwatth"
},
{
"click": "menuItemSelected(9,7)",
"text": "joule (J)",
"value": "joule"
},
{
"click": "menuItemSelected(9,8)",
"text": "electron volt (eV)",
"value": "ev"
},
{
"click": "menuItemSelected(9,9)",
"text": "Ampere (A)",
"value": "amp"
},
{
"click": "menuItemSelected(9,10)",
"text": "Volt (V)",
"value": "volt"
}
],
"text": "energy"
},
{
"submenu": [
{
"click": "menuItemSelected(10,0)",
"text": "Celcius (°C)",
"value": "celsius"
},
{
"click": "menuItemSelected(10,1)",
"text": "Farenheit (°F)",
"value": "farenheit"
},
{
"click": "menuItemSelected(10,2)",
"text": "Kelvin (K)",
"value": "kelvin"
}
],
"text": "temperature"
},
{
"submenu": [
{
"click": "menuItemSelected(11,0)",
"text": "Millibars",
"value": "pressurembar"
},
{
"click": "menuItemSelected(11,1)",
"text": "Hectopascals",
"value": "pressurehpa"
},
{
"click": "menuItemSelected(11,2)",
"text": "Inches of mercury",
"value": "pressurehg"
},
{
"click": "menuItemSelected(11,3)",
"text": "PSI",
"value": "pressurepsi"
}
],
"text": "pressure"
}
],
"valueMaps": [
{
"op": "=",
"text": "N/A",
"value": "null"
}
]
}
],
"repeat": null,
"repeatIteration": null,
"repeatRowId": null,
"showTitle": false,
"title": "Row",
"titleSize": "h6"
}
],
"schemaVersion": 14,
"style": "dark",
"tags": [],
"templating": {
"list": [
{
"allValue": null,
"current": {
"isNone": true,
"text": "None",
"value": ""
},
"datasource": "influx-local",
"hide": 0,
"includeAll": false,
"label": "traffic-lane",
"multi": false,
"name": "lanes",
"options": [],
"query": "SHOW TAG VALUES WITH KEY = \"id\"",
"refresh": 1,
"regex": "/thing/traffic-lane*/",
"sort": 0,
"tagValuesQuery": "",
"tags": [],
"tagsQuery": "",
"type": "query",
"useTags": false
}
]
},
"time": {
"from": "now-12h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
"timezone": "browser",
"title": "test",
"version": 28
}
\ No newline at end of file
version: '2'
services:
### DS ###
ds:
environment:
IPG_ENV_PARAMS: "-Dmongodb.port=27017#\
-Dds.mongodb.host=mongodb#\
-Dredis.port=6379#\
-Dredis.host=redis#\
-DconfigFile.location=/opt/mcx/config#\
-Dmcz.files.location=/opt/mcx#\
-Dds.orientdb.url=remote:orientdb#\
-Ddao.use.cache=false#\
-Ddao.es.activity.url=activityidx/activity#\
-Ddao.es.activity.hostport=elk:9200"
# -Dds.sap.hana.url=35.156.55.64:8000#\
# -Dhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000#\
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/ds:37-43b2b94
# image: 172.16.1.212:5050/mcx/ds:21-837052
ports:
- "8012:50050"
- "7443:8443"
- "8190:8000"
networks:
- backend
###### transportation ###################
transportation:
environment:
IPG_ENV_PARAMS: "-DdemoMode=minneapolis,modiin,givatayim,san-diego#\
-Ddemo.changeRandomality=6#\
-DconfigFile.location=/opt/mcx/config/config.properties#\
-DconfigLocation=/opt/mcx/config/#\
-Dtransportation.updateTrafficLaneTimeout=30000#\
-Dhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=30000#\
-Dds.ip=ds:50050#\
-Dtransportation.dsServer.address=ds:50050#\
-Dtransportation.server.address=transportation:50035#\
-Dtransportation.mdeServer.address=mde:50040#\
-Dtransportation.mde2Server.address=mde2:50041#\
-Dtransportation.subscription.interval=60#\
-Dinfluxdb.hostport=influxdb:8086#\
-Duser.timezone=Asia/Jerusalem#\
-Dpubsub.host=mqtt#\
-Dpubsub.port=1883"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/transportation:17-ec4f801
# image: municipalitybank.com:5050/mcx/transportation:16-a1ecc08
# image: municipalitybank.com:5050/mcx/transportation:15-0efa750
# image: municipalitybank.com:5050/mcx/transportation:12-b1b7268
# image: municipalitybank.com:5050/mcx/transportation:9-c254299
networks:
- backend
ports:
- "8300:8000"
- "50035:50035"
####### parking ###################
parking:
environment:
IPG_ENV_PARAMS: "-DdemoMode=minneapolis,chicago,modiin,givatayim#\
-DconfigFile.location=/opt/mcx/config/config.properties#\
-DconfigLocation=/opt/mcx/config/#\
-Dredis.host=redis#\
-Dparking.server.address=parking:50055#\
-Dds.IpAddress=ds:50050#\
-Dds.ip=ds:50050#\
-Dmde.IpAddress=mde2:50041#\
-Ddemo.changeRandomality=9#\
-Dhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=30000"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/parking:9-6cec946
# image: municipalitybank.com:5050/mcx/parking:7-a8c7fc9
# image: municipalitybank.com:5050/mcx/parking:6-e184f20
# image: 172.16.1.212:5050/mcx/parking:20-d72ebf
ports:
# - "8015:8000"
- "50055:50055"
networks:
- backend
## PUBLIC SFAETY
public-safety:
environment:
IPG_ENV_PARAMS: "-DdemoMode=minneapolis,modiin,chicago,givatayim#\
-DpublicSafety.updateCrosswalkTimeout=300000#\
-Dhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000#\
-DconfigFile.location=/opt/mcx/config/config.properties#\
-DpublicSafety.server.address=public-safety:50005#\
-Dredis.host=redis#\
-DpublicSafety.env.checkEventsDaysBack=180#\
-DconfigLocation=/opt/mcx/config/#\
-DpublicSafety.dsServer.address=ds:50050#\
-Dds.ip=ds:50050#\
-DpublicSafety.env.checkEventsInitialDelay=60#\
-DpublicSafety.env.checkEventsEveryPeriod=300#\
-Dinfluxdb.hostport=influxdb:8086#\
-DpublicSafety.mdeServer.address=mde:50040#\
-DpublicSafety.mde2Server.address=mde2:50041"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/public-safety:22-0f6abc1
# image: municipalitybank.com:5050/mcx/public-safety:21-c14ead7
# image: municipalitybank.com:5050/mcx/public-safety:19-3b62940
# image: 172.16.1.212:5050/mcx/public-safety:33-0a1fbb
ports:
- "8100:8000"
- "50005:50005"
volumes:
- "/opt/mcx/config/repo/public-safety:/opt/mcx/config/repo/public-safety"
networks:
- backend
ui-api:
environment:
IPG_ENV_PARAMS: "-DdataLogic.IpAddress=data-logic:50045#\
-Dmongodb.port=27017#\
-Dds.ip.address=ds#\
-Dds.ip=ds:50050#\
-Dsrg.sip.hostport=srg:5076#\
-Dmcweb.sip.ip=ui-api:5060#\
-Dmcweb.ip=172.16.1.72:8011#\
-Dredis.host=redis#\
-Dredis.port=6379#\
-DconfigFile.location=/opt/mcx/config#\
-Dmcz.files.location=/opt/mcz#\
-Dpush.server.url=push-server:50000#\
-Duse.schedular=true#\
-Dcity.reports=san-diego,chicago#\
-Dconfig.public.address=ipgallery-mcz.com:8072#\
-Drcs.send.message.url=http://srg/srg/chat/v1/standalone/sendmessage#\
-Dpubsub.url=wss://ipgallery-mcz.com:8072/mqtt#\
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9080"
image: municipalitybank.com:5050/mcx/ui:13-a788e7f
ports:
- "8011:8080"
- "9443:8443"
- "9080:9080"
volumes:
- "/opt/mcz/user_images:/opt/mcz/user_images"
networks:
- backend
depends_on:
- srg
### DATA-LOGIC ###
data-logic:
environment:
IPG_ENV_PARAMS: "-Dds.IpAddress=ds:50050#\
-Dredis.host=redis"
image: municipalitybank.com:5050/mcx/data-logic:7-e7171be
# image: 172.16.1.212:5050/mcx/data-logic:4-b354b7
ports:
- "8110:8000"
- "50045:50045"
networks:
- backend
### PUSH-SERVER ###
push-server:
environment:
IPG_ENV_PARAMS: "-Dredis.host=redis"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/push-server:8-8d10c0
# image: 172.16.1.212:5050/mcx/push-server:7-5847b1
ports:
- "8120:8000"
- "50000:50000"
networks:
- backend
### SRG + COMM-LOGIC
comm-logic:
environment:
IPG_ENV_PARAMS: "-Dds.ip=ds:50050#\
-Dredis.host=redis#\
-Dsrg.sip.hostport=srg:5076#\
-Dexternal.host.port=172.16.1.72:5076#\
-Drcs.send.message.url=http://srg:8060/srg/chat/v1/standalone/sendmessage#\
-Dpush.server.bulk=20#\
-Dpush.server.url=push-server:50000#\
-Dserver.worker.threads=1"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/comm-logic:16-9ac3c59
# image: 172.16.1.212:5050/mcx/comm-logic:16-16e2b7
ports:
- "8130:8000"
- "50030:50030"
networks:
- backend
# log_driver: fluentd
srg:
environment:
IPSIPStack_HostName: srg
IPSIPStack_InternalHostNameComSrv: 0.0.0.0
IPSIPStack_NumOfPorts: 1
IPSIPStack_Port1Number: 5076
IPSIPStack_InternalPort1NumberComSrv: 5076
IPSIPStack_UseWebSocket: Y
IPSIPStack_WebSocketServerPortNumber: 7681
SessCntrl_RegisterPortNumber: 5076
SIPC_MyHostName: srg:8080
SIPC_MCServicesServerHost: http://comm-logic:50030/CommLogic/api/
# extra_hosts:
# - "pcscf.open-ims.test:0.0.0.0"
# - "scscf.open-ims.test:172.16.1.244"
image: 172.16.1.132:5000/ipgallery/srg
ports:
- "5076:5076/udp"
- "7681:7681"
- "8060:80"
privileged: true
volumes:
- "/tmp/srg:/cassi/log"
networks:
- backend
## PUBLIC SFAETY-IC
public-safety-ic:
environment:
IPG_ENV_PARAMS: "-Dds.IpAddress=ds:50050#\
-Dredis.host=redis#\
-DconfigFile.location=/opt/mcx/config/ICPublicSafety/config.properties
-DconfigLocation=/opt/mcx/config/ICPublicSafety/
-Duse.iot.reporting=false"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/public-safety/ic:27-28613d2
# image: 172.16.1.212:5050/mcx/public-safety:ic-20-17603423ab703d89765f19636ba71dc98b81e616
# image: 172.16.1.212:5050/mcx/public-safety:ic-19-9fb286e80940947addfeb342169e44f20f7134ab
ports:
- "50004:50004"
networks:
- backend
## COM SERVICE
comm-service:
image: municipalitybank.com:5050/mcx/comm-service:1-4-sync-cb
# image: municipalitybank.com:5050/mcx/comm-service:latest
environment:
PARGS: "-m server -p 50000 -s id#rest#http"
log4cpp.console: "yes"
flushEveryLog: "yes"
ports:
- "50060:50060"
networks:
- backend
###### mde ###################
mde:
environment:
IPG_ENV_PARAMS: "-Dds.IpAddress=ds:50050#\
-Dredis.host=redis#\
-Dmde.cisco.username=operator14@cdp.com#\
-Dmde.cisco.password=R0AxOENicTQ=#\
-Dmde.cisco.clientId=a27b18484c3c4e08a7c193e42c639347#\
-Dmde.cisco.clientSecret=b863de8f453c4a05A88126F45B958CF1"
USE_DEBUG: "yes"
image: municipalitybank.com:5050/mcx/mde:12-fd8faf7
# image: 172.16.1.212:5050/mcx/mde:19-3ebc7c
# image: 172.16.1.212:5050/mcx/mde:15-f25d9f
ports:
- "8200:8000"
- "50040:50040"
# extra_hosts:
# - "parking:178.62.63.127"
# - "transportation:178.62.63.127"
# - "public-safety:178.62.63.127"
networks:
- backend
###### mde2 ###################
mde2:
environment:
ENV_PARAMS_COMMON: "-Dredis.host=redis#\
-Dhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000"
ENV_PARAMS_apiHandler: "-DconfigFile.location=/opt/mcx/config/apiHandler/config.properties#\
-DconfigLocation=/opt/mcx/config/apiHandler"
DEBUG_apiHandler: "yes"
ENV_PARAMS_httpAdapter: "-DconfigFile.location=/opt/mcx/config/httpAdapter/config.properties#\
-DconfigLocation=/opt/mcx/config/httpAdapter#\
-Ddomain_comsrv=comm-service:50060"
DEBUG_httpAdapter: "yes"
ENV_PARAMS_apiService: "-DconfigFile.location=/opt/mcx/config/apiService/config.properties#\
-DconfigLocation=/opt/mcx/config/apiService/#\
-Dredis.host=redis#\
-DloginUserName=ipgallery#\
-DloginPassword=1PGall3ry#\
-Dsan-jose.loginUsername=operator20@cdp.com#\
-Dsan-jose.loginPassword=4y@Dvc7Q#\
-Dsan-jose.loginClientId=a27b18484c3c4e08a7c193e42c639347#\
-Dsan-jose.loginClientSecret=b863de8f453c4a05A88126F45B958CF1"
DEBUG_apiService: "yes"
image: municipalitybank.com:5050/mcx/mde2:7-2188c62
#image: municipalitybank.com:5050/mcx/mde2:6-1b865d2
#image: municipalitybank.com:5050/mcx/mde2:5-ea91ef5
#image: municipalitybank.com:5050/mcx/mde2:4-36b09f9
#image: municipalitybank.com:5050/mcx/mde2:2-e9c7d03
ports:
- "8040:8140" # apiHandler debug port
- "8041:8141" # apiService debug port
- "8042:8142" # httpAdapter debug port
- "8043:8043" # admin debug port
- "50041:50041" # mde2(apiService) listening port
- "50042:50042" # mde2(httpAdapter) listening port
- "50043:50043" # mde2(admin) listening port
networks:
- backend
predictions:
environment:
mqtt: "mqtt:1883"
influxdb_hostport: "influxdb:8086"
influxdb_dbname: "mcx_db"
callbackAddress: "ipgallery-mcz.com:8072/predictions"
image: municipalitybank.com:5050/mcx/predictions
ports:
- "8080:50065"
networks:
- backend
networks:
backend:
driver: bridge
version: '2'
services:
##### Mongo
mongodb:
image: mongo
ports:
- "27027:27017"
volumes:
- "/ext/mongodb/:/data/db"
networks:
- backend
# command: mongod --replSet Server_29
##### Redis
redis:
image: redis
ports:
- "6389:6379"
volumes:
- "/ext/redis/conf/:/usr/local/etc/redis/redis.conf"
- "/ext/redis/:/data/"
networks:
- backend
### Orient
orientdb:
image: aquabiota/orientdb-alpine-spatial
# command: /orientdb/bin/server.sh -Xms512m -Xmx512m
restart: on-failure
ports:
- "2424:2424"
- "2480:2480"
environment:
ORIENTDB_ROOT_PASSWORD: 'giptmgr'
ORIENTDB_OPTS_MEMORY: "-Xms512m -Xmx512m"
volumes:
- /ext/orientdb/config:/orientdb/config
- /ext/orientdb/databases:/orientdb/databases
- /ext/orientdb/backup:/orientdb/backup
networks:
- backend
###Open Trip Planner
# otp:
# image: municipalitybank.com:5050/mcx/devops/otp
# ports:
# - "8082:8080"
# - "8083:8081"
# volumes:
# - /var/otp/graphs:/var/otp/graphs
# environment:
# JAVA_ARGS: "-Xms256m -Xmx512m"
# command: --autoScan --server
# networks:
# - backend
mqtt:
image: eclipse-mosquitto
ports:
- "8050:8080"
- "1885:1883"
volumes:
- /opt/mcx/config/mosquitto/mosquitto.conf:/mosquitto/config/mosquitto.conf
# environment:
# JAVA_ARGS: "-Xms512m -Xmx512m"
networks:
- backend
elk:
image: sebp/elk
ports:
- "5601:5601"
- "9200:9200"
environment:
ES_JAVA_OPTS: "-Xms512m -Xmx512m"
volumes:
- "/ext/elasticsearch:/var/lib/elasticsearch"
networks:
- backend
fluentd-es:
image: openfirmware/fluentd-elasticsearch
ports:
- "24224:24224"
- "8888:8888"
links:
- elk:elasticsearch
networks:
- backend
# user: elastic, pass:changeme
# before running ,run: sudo sysctl -w vm.max_map_count=262144
# add follwing line in /etc/sysctl.conf
# vm.max_map_count = 262144
# create with geo json
#curl -XPUT "http://localhost:9200/activityidx" -d'{ "mappings": { "activity": { "properties": { "metaData.loc": { "type": "geo_point" } } } } }'
# view
# curl: curl -XGET "http://localhost:9200/activityidx/activity" -d'{ "query": { "match_all": {} }}'
influxdb:
environment:
INFLUXDB_GRAPHITE_ENABLED: 'true'
INFLUXDB_DB: "mcx_db"
INFLUXDB_USER: "root"
INFLUXDB_USER_PASSWORD: "giptmgr"
image: influxdb
ports:
- "8084:8083"
- "8086:8086"
- "2003:2003"
volumes:
- /ext/influxdb:/var/lib/influxdb
- /tmp/influxdb:/tmp
networks:
- backend
grafana:
environment:
GF_INSTALL_PLUGINS: "grafana-piechart-panel,briangann-gauge-panel"
GF_AUTH_ANONYMOUS_ENABLED: 'true'
# GF_AUTH_ANONYMOUS_ORG_NAME: 'Main Org'
GF_AUTH_ANONYMOUS_ORG_ROLE: 'Anonymous'
GF_SERVER_DOMAIN: 'ipgallery-mcz.com'
GF_SERVER_ROOT_URL: '%(protocol)s://%(domain)s:/grafana'
HTTP_USER: "root"
HTTP_PASS: "giptmgrr"
INFLUXDB_PROTO: http
INFLUXDB_HOST: influxdb
INFLUXDB_PORT: 8086
INFLUXDB_NAME: "mcx_db"
INFLUXDB_USER: "root"
INFLUXDB_PASS: "giptmgrr"
image: grafana/grafana
ports:
- "3000:3000"
- "8048:80"
depends_on:
- influxdb
volumes:
- /ext/grafana:/var/lib/grafana
#user/pass = admin/admin
networks:
- backend
networks:
backend:
driver: bridge
version: '2'
services:
### UI-WEB-CONTROL (NGINX + WEB)
ui-web-control:
environment:
OTP_SERVER: "ipgallery-mcz.com:8099"
KIBANA_SERVER: "elk:5601"
CAMERA_STREAM: "62.90.201.74:9081"
CAMERA_API: "62.90.201.74:9090"
PUBLIC_SAFETY_CAMERA: "24.172.188.211:16000"
TRANSPORTATION_SERVER: "transportation:50035"
PARKING_SERVER: "parking:50055"
PUBLIC_SAFETY_SERVER_HOSTPORT: "public-safety:50005"
UI_SERVER_HOSTPORT: "ui-api:8080"
PUBLIC_SAFETY_IC_PORT_50004_TCP_ADDR: "public-safety-ic"
SRG_SERVER_HOSTPORT: "srg:7681"
image: municipalitybank.com:5050/mcx/ui-web/control-center-verticals:9-5b70c6a
#image: municipalitybank.com:5050/mcx/ui-web/control-center-verticals:8-e5ef395
#image: municipalitybank.com:5050/mcx/ui-web/control-center-verticals:7-0a04ab2
#image: municipalitybank.com:5050/mcx/ui-web/control-center-verticals:6-97035d7
#image: municipalitybank.com:5050/mcx/ui-web/control-center-verticals:5-cd322bb
#image: municipalitybank.com:5050/mcx/ui-web/control-center-verticals:4-891383a
volumes:
- "/opt/mcx/config/repo/public-safety:/usr/share/nginx/html/repo/public-safety"
networks:
- backend
### UI-WEB-CLIENT (NGINX + WEB)
ui-web-client:
image: municipalitybank.com:5050/mcx/ui-web/client:21-dfcfa2d
#image: municipalitybank.com:5050/mcx/ui-web:client-8-dea10d499084c4340ed08dd3bedc54a62e127965
# image: 172.16.1.212:5050/mcx/ui-web:client-25-fc74e8fe1b9cf7fbca90ad3b4da9fc3187bf4d1e
environment:
OTP_SERVER: "ipgallery-mcz.com:8099"
KIBANA_SERVER: "elk:5601"
CAMERA_STREAM: "62.90.201.74:9081"
CAMERA_API: "62.90.201.74:9090"
PUBLIC_SAFETY_CAMERA: "24.172.188.211:16000"
TRANSPORTATION_SERVER: "transportation:50035"
PARKING_SERVER: "parking:50055"
PUBLIC_SAFETY_SERVER_HOSTPORT: "public-safety:50005"
UI_SERVER_HOSTPORT: "ui-api:8080"
PUBLIC_SAFETY_IC_PORT_50004_TCP_ADDR: "public-safety-ic"
SRG_SERVER_HOSTPORT: "srg:7681"
networks:
- backend
### UI-WEB-DRIVER (NGINX + WEB)
ui-web-driver:
# image: 172.16.1.212:5050/mcx/ui-web:driver-11-0a1f26cdf30b6734909f9c815a0b98c83b1a2c01
image: municipalitybank.com:5050/mcx/ui-web:driver-2-963a1f8b75479192f5de29eb797422e67102fdbb
environment:
OTP_SERVER: "ipgallery-mcz.com:8099"
KIBANA_SERVER: "elk:5601"
CAMERA_STREAM: "62.90.201.74:9081"
CAMERA_API: "62.90.201.74:9090"
PUBLIC_SAFETY_CAMERA: "24.172.188.211:16000"
TRANSPORTATION_SERVER: "transportation:50035"
PARKING_SERVER: "parking:50055"
PUBLIC_SAFETY_SERVER_HOSTPORT: "public-safety:50005"
UI_SERVER_HOSTPORT: "ui-api:8080"
PUBLIC_SAFETY_IC_PORT_50004_TCP_ADDR: "public-safety-ic"
SRG_SERVER_HOSTPORT: "srg:7681"
networks:
- backend
## FRONT END
front-end:
environment:
OTP_SERVER: "ipgallery-mcz.com:8099"
KIBANA_SERVER: "elk:5601"
CAMERA_STREAM: "62.90.201.74:9081"
CAMERA_API: "62.90.201.74:9090"
PUBLIC_SAFETY_CAMERA: "24.172.188.211:16000"
TRANSPORTATION_SERVER: "transportation:50035"
PARKING_SERVER: "parking:50055"
PUBLIC_SAFETY_PORT_50005_TCP_ADDR: "public-safety"
PUBLIC_SAFETY_PORT_50005_TCP_PORT: "50005"
UI_API_PORT_8080_TCP_ADDR: "ui-api"
PUBLIC_SAFETY_IC_PORT_50004_TCP_ADDR: "public-safety-ic"
SRG_PORT_7681_TCP_ADDR: "srg"
SRG_PORT_7681_TCP_PORT: "7681"
PGID: "911"
PUID: "911"
ONLY_SUBDOMAINS: "false"
URL: "ipgallery-mcz.com"
TZ: "Israel"
MAKE_CERT: "true"
image: municipalitybank.com:5050/mcx/front-end:20-c0d5a5d
# image: municipalitybank.com:5050/mcx/front-end:19-d2f0bbb
ports:
- "443:443"
volumes:
- "/opt/mcz/config-letsencrypt/:/config:rw"
- "/opt/mcz/config-letsencrypt/tmp:/var/tmp/nginx:rw"
# extra_hosts:
# - "grafana:172.16.1.244"
networks:
- backend
networks:
backend:
driver: bridge
# Config file for mosquitto
#
# See mosquitto.conf(5) for more information.
#
# Default values are shown, uncomment to change.
#
# Use the # character to indicate a comment, but only if it is the
# very first character on the line.
# =================================================================
# General configuration
# =================================================================
# Time in seconds to wait before resending an outgoing QoS=1 or
# QoS=2 message.
#retry_interval 20
# Time in seconds between updates of the $SYS tree.
# Set to 0 to disable the publishing of the $SYS tree.
#sys_interval 10
# Time in seconds between cleaning the internal message store of
# unreferenced messages. Lower values will result in lower memory
# usage but more processor time, higher values will have the
# opposite effect.
# Setting a value of 0 means the unreferenced messages will be
# disposed of as quickly as possible.
#store_clean_interval 10
# Write process id to a file. Default is a blank string which means
# a pid file shouldn't be written.
# This should be set to /var/run/mosquitto.pid if mosquitto is
# being run automatically on boot with an init script and
# start-stop-daemon or similar.
#pid_file
# When run as root, drop privileges to this user and its primary
# group.
# Leave blank to stay as root, but this is not recommended.
# If run as a non-root user, this setting has no effect.
# Note that on Windows this has no effect and so mosquitto should
# be started by the user you wish it to run as.
#user mosquitto
# The maximum number of QoS 1 and 2 messages currently inflight per
# client.
# This includes messages that are partway through handshakes and
# those that are being retried. Defaults to 20. Set to 0 for no
# maximum. Setting to 1 will guarantee in-order delivery of QoS 1
# and 2 messages.
#max_inflight_messages 20
# The maximum number of QoS 1 and 2 messages to hold in a queue
# above those that are currently in-flight. Defaults to 100. Set
# to 0 for no maximum (not recommended).
# See also queue_qos0_messages.
#max_queued_messages 100
# Set to true to queue messages with QoS 0 when a persistent client is
# disconnected. These messages are included in the limit imposed by
# max_queued_messages.
# Defaults to false.
# This is a non-standard option for the MQTT v3.1 spec but is allowed in
# v3.1.1.
#queue_qos0_messages false
# This option sets the maximum publish payload size that the broker will allow.
# Received messages that exceed this size will not be accepted by the broker.
# The default value is 0, which means that all valid MQTT messages are
# accepted. MQTT imposes a maximum payload size of 268435455 bytes.
#message_size_limit 0
# This option controls whether a client is allowed to connect with a zero
# length client id or not. This option only affects clients using MQTT v3.1.1
# and later. If set to false, clients connecting with a zero length client id
# are disconnected. If set to true, clients will be allocated a client id by
# the broker. This means it is only useful for clients with clean session set
# to true.
#allow_zero_length_clientid true
# If allow_zero_length_clientid is true, this option allows you to set a prefix
# to automatically generated client ids to aid visibility in logs.
#auto_id_prefix
# This option allows persistent clients (those with clean session set to false)
# to be removed if they do not reconnect within a certain time frame.
#
# This is a non-standard option in MQTT V3.1 but allowed in MQTT v3.1.1.
#
# Badly designed clients may set clean session to false whilst using a randomly
# generated client id. This leads to persistent clients that will never
# reconnect. This option allows these clients to be removed.
#
# The expiration period should be an integer followed by one of h d w m y for
# hour, day, week, month and year respectively. For example
#
# persistent_client_expiration 2m
# persistent_client_expiration 14d
# persistent_client_expiration 1y
#
# The default if not set is to never expire persistent clients.
#persistent_client_expiration
# If a client is subscribed to multiple subscriptions that overlap, e.g. foo/#
# and foo/+/baz , then MQTT expects that when the broker receives a message on
# a topic that matches both subscriptions, such as foo/bar/baz, then the client
# should only receive the message once.
# Mosquitto keeps track of which clients a message has been sent to in order to
# meet this requirement. The allow_duplicate_messages option allows this
# behaviour to be disabled, which may be useful if you have a large number of
# clients subscribed to the same set of topics and are very concerned about
# minimising memory usage.
# It can be safely set to true if you know in advance that your clients will
# never have overlapping subscriptions, otherwise your clients must be able to
# correctly deal with duplicate messages even when then have QoS=2.
#allow_duplicate_messages false
# The MQTT specification requires that the QoS of a message delivered to a
# subscriber is never upgraded to match the QoS of the subscription. Enabling
# this option changes this behaviour. If upgrade_outgoing_qos is set true,
# messages sent to a subscriber will always match the QoS of its subscription.
# This is a non-standard option explicitly disallowed by the spec.
#upgrade_outgoing_qos false
# =================================================================
# Default listener
# =================================================================
# IP address/hostname to bind the default listener to. If not
# given, the default listener will not be bound to a specific
# address and so will be accessible to all network interfaces.
# bind_address ip-address/host name
#bind_address
# Port to use for the default listener.
port 1883
# The maximum number of client connections to allow. This is
# a per listener setting.
# Default is -1, which means unlimited connections.
# Note that other process limits mean that unlimited connections
# are not really possible. Typically the default maximum number of
# connections possible is around 1024.
#max_connections -1
# Choose the protocol to use when listening.
# This can be either mqtt or websockets.
# Websockets support is currently disabled by default at compile time.
# Certificate based TLS may be used with websockets, except that
# only the cafile, certfile, keyfile and ciphers options are supported.
protocol mqtt
# When a listener is using the websockets protocol, it is possible to serve
# http data as well. Set http_dir to a directory which contains the files you
# wish to serve. If this option is not specified, then no normal http
# connections will be possible.
#http_dir
# Set use_username_as_clientid to true to replace the clientid that a client
# connected with with its username. This allows authentication to be tied to
# the clientid, which means that it is possible to prevent one client
# disconnecting another by using the same clientid.
# If a client connects with no username it will be disconnected as not
# authorised when this option is set to true.
# Do not use in conjunction with clientid_prefixes.
# See also use_identity_as_username.
#use_username_as_clientid
# -----------------------------------------------------------------
# Certificate based SSL/TLS support
# -----------------------------------------------------------------
# The following options can be used to enable SSL/TLS support for
# this listener. Note that the recommended port for MQTT over TLS
# is 8883, but this must be set manually.
#
# See also the mosquitto-tls man page.
# At least one of cafile or capath must be defined. They both
# define methods of accessing the PEM encoded Certificate
# Authority certificates that have signed your server certificate
# and that you wish to trust.
# cafile defines the path to a file containing the CA certificates.
# capath defines a directory that will be searched for files
# containing the CA certificates. For capath to work correctly, the
# certificate files must have ".crt" as the file ending and you must run
# "c_rehash <path to capath>" each time you add/remove a certificate.
#cafile
#capath
# Path to the PEM encoded server certificate.
#certfile
# Path to the PEM encoded keyfile.
#keyfile
# This option defines the version of the TLS protocol to use for this listener.
# The default value allows v1.2, v1.1 and v1.0, if they are all supported by
# the version of openssl that the broker was compiled against. For openssl >=
# 1.0.1 the valid values are tlsv1.2 tlsv1.1 and tlsv1. For openssl < 1.0.1 the
# valid values are tlsv1.
#tls_version
# By default a TLS enabled listener will operate in a similar fashion to a
# https enabled web server, in that the server has a certificate signed by a CA
# and the client will verify that it is a trusted certificate. The overall aim
# is encryption of the network traffic. By setting require_certificate to true,
# the client must provide a valid certificate in order for the network
# connection to proceed. This allows access to the broker to be controlled
# outside of the mechanisms provided by MQTT.
#require_certificate false
# If require_certificate is true, you may set use_identity_as_username to true
# to use the CN value from the client certificate as a username. If this is
# true, the password_file option will not be used for this listener.
#use_identity_as_username false
# If you have require_certificate set to true, you can create a certificate
# revocation list file to revoke access to particular client certificates. If
# you have done this, use crlfile to point to the PEM encoded revocation file.
#crlfile
# If you wish to control which encryption ciphers are used, use the ciphers
# option. The list of available ciphers can be optained using the "openssl
# ciphers" command and should be provided in the same format as the output of
# that command.
# If unset defaults to DEFAULT:!aNULL:!eNULL:!LOW:!EXPORT:!SSLv2:@STRENGTH
#ciphers DEFAULT:!aNULL:!eNULL:!LOW:!EXPORT:!SSLv2:@STRENGTH
# -----------------------------------------------------------------
# Pre-shared-key based SSL/TLS support
# -----------------------------------------------------------------
# The following options can be used to enable PSK based SSL/TLS support for
# this listener. Note that the recommended port for MQTT over TLS is 8883, but
# this must be set manually.
#
# See also the mosquitto-tls man page and the "Certificate based SSL/TLS
# support" section. Only one of certificate or PSK encryption support can be
# enabled for any listener.
# The psk_hint option enables pre-shared-key support for this listener and also
# acts as an identifier for this listener. The hint is sent to clients and may
# be used locally to aid authentication. The hint is a free form string that
# doesn't have much meaning in itself, so feel free to be creative.
# If this option is provided, see psk_file to define the pre-shared keys to be
# used or create a security plugin to handle them.
#psk_hint
# Set use_identity_as_username to have the psk identity sent by the client used
# as its username. Authentication will be carried out using the PSK rather than
# the MQTT username/password and so password_file will not be used for this
# listener.
#use_identity_as_username false
# When using PSK, the encryption ciphers used will be chosen from the list of
# available PSK ciphers. If you want to control which ciphers are available,
# use the "ciphers" option. The list of available ciphers can be optained
# using the "openssl ciphers" command and should be provided in the same format
# as the output of that command.
#ciphers
# =================================================================
# Extra listeners
# =================================================================
# Listen on a port/ip address combination. By using this variable
# multiple times, mosquitto can listen on more than one port. If
# this variable is used and neither bind_address nor port given,
# then the default listener will not be started.
# The port number to listen on must be given. Optionally, an ip
# address or host name may be supplied as a second argument. In
# this case, mosquitto will attempt to bind the listener to that
# address and so restrict access to the associated network and
# interface. By default, mosquitto will listen on all interfaces.
# Note that for a websockets listener it is not possible to bind to a host
# name.
# listener port-number [ip address/host name]
listener 8080
# The maximum number of client connections to allow. This is
# a per listener setting.
# Default is -1, which means unlimited connections.
# Note that other process limits mean that unlimited connections
# are not really possible. Typically the default maximum number of
# connections possible is around 1024.
#max_connections -1
# The listener can be restricted to operating within a topic hierarchy using
# the mount_point option. This is achieved be prefixing the mount_point string
# to all topics for any clients connected to this listener. This prefixing only
# happens internally to the broker; the client will not see the prefix.
#mount_point
# Choose the protocol to use when listening.
# This can be either mqtt or websockets.
# Certificate based TLS may be used with websockets, except that only the
# cafile, certfile, keyfile and ciphers options are supported.
protocol websockets
# When a listener is using the websockets protocol, it is possible to serve
# http data as well. Set http_dir to a directory which contains the files you
# wish to serve. If this option is not specified, then no normal http
# connections will be possible.
#http_dir
# Set use_username_as_clientid to true to replace the clientid that a client
# connected with with its username. This allows authentication to be tied to
# the clientid, which means that it is possible to prevent one client
# disconnecting another by using the same clientid.
# If a client connects with no username it will be disconnected as not
# authorised when this option is set to true.
# Do not use in conjunction with clientid_prefixes.
# See also use_identity_as_username.
#use_username_as_clientid
# -----------------------------------------------------------------
# Certificate based SSL/TLS support
# -----------------------------------------------------------------
# The following options can be used to enable certificate based SSL/TLS support
# for this listener. Note that the recommended port for MQTT over TLS is 8883,
# but this must be set manually.
#
# See also the mosquitto-tls man page and the "Pre-shared-key based SSL/TLS
# support" section. Only one of certificate or PSK encryption support can be
# enabled for any listener.
# At least one of cafile or capath must be defined to enable certificate based
# TLS encryption. They both define methods of accessing the PEM encoded
# Certificate Authority certificates that have signed your server certificate
# and that you wish to trust.
# cafile defines the path to a file containing the CA certificates.
# capath defines a directory that will be searched for files
# containing the CA certificates. For capath to work correctly, the
# certificate files must have ".crt" as the file ending and you must run
# "c_rehash <path to capath>" each time you add/remove a certificate.
#cafile
#capath
# Path to the PEM encoded server certificate.
#certfile
# Path to the PEM encoded keyfile.
#keyfile
# By default an TLS enabled listener will operate in a similar fashion to a
# https enabled web server, in that the server has a certificate signed by a CA
# and the client will verify that it is a trusted certificate. The overall aim
# is encryption of the network traffic. By setting require_certificate to true,
# the client must provide a valid certificate in order for the network
# connection to proceed. This allows access to the broker to be controlled
# outside of the mechanisms provided by MQTT.
#require_certificate false
# If require_certificate is true, you may set use_identity_as_username to true
# to use the CN value from the client certificate as a username. If this is
# true, the password_file option will not be used for this listener.
#use_identity_as_username false
# If you have require_certificate set to true, you can create a certificate
# revocation list file to revoke access to particular client certificates. If
# you have done this, use crlfile to point to the PEM encoded revocation file.
#crlfile
# If you wish to control which encryption ciphers are used, use the ciphers
# option. The list of available ciphers can be optained using the "openssl
# ciphers" command and should be provided in the same format as the output of
# that command.
#ciphers
# -----------------------------------------------------------------
# Pre-shared-key based SSL/TLS support
# -----------------------------------------------------------------
# The following options can be used to enable PSK based SSL/TLS support for
# this listener. Note that the recommended port for MQTT over TLS is 8883, but
# this must be set manually.
#
# See also the mosquitto-tls man page and the "Certificate based SSL/TLS
# support" section. Only one of certificate or PSK encryption support can be
# enabled for any listener.
# The psk_hint option enables pre-shared-key support for this listener and also
# acts as an identifier for this listener. The hint is sent to clients and may
# be used locally to aid authentication. The hint is a free form string that
# doesn't have much meaning in itself, so feel free to be creative.
# If this option is provided, see psk_file to define the pre-shared keys to be
# used or create a security plugin to handle them.
#psk_hint
# Set use_identity_as_username to have the psk identity sent by the client used
# as its username. Authentication will be carried out using the PSK rather than
# the MQTT username/password and so password_file will not be used for this
# listener.
#use_identity_as_username false
# When using PSK, the encryption ciphers used will be chosen from the list of
# available PSK ciphers. If you want to control which ciphers are available,
# use the "ciphers" option. The list of available ciphers can be optained
# using the "openssl ciphers" command and should be provided in the same format
# as the output of that command.
#ciphers
# =================================================================
# Persistence
# =================================================================
# If persistence is enabled, save the in-memory database to disk
# every autosave_interval seconds. If set to 0, the persistence
# database will only be written when mosquitto exits. See also
# autosave_on_changes.
# Note that writing of the persistence database can be forced by
# sending mosquitto a SIGUSR1 signal.
#autosave_interval 1800
# If true, mosquitto will count the number of subscription changes, retained
# messages received and queued messages and if the total exceeds
# autosave_interval then the in-memory database will be saved to disk.
# If false, mosquitto will save the in-memory database to disk by treating
# autosave_interval as a time in seconds.
#autosave_on_changes false
# Save persistent message data to disk (true/false).
# This saves information about all messages, including
# subscriptions, currently in-flight messages and retained
# messages.
# retained_persistence is a synonym for this option.
#persistence false
# The filename to use for the persistent database, not including
# the path.
#persistence_file mosquitto.db
# Location for persistent database. Must include trailing /
# Default is an empty string (current directory).
# Set to e.g. /var/lib/mosquitto/ if running as a proper service on Linux or
# similar.
#persistence_location
# =================================================================
# Logging
# =================================================================
# Places to log to. Use multiple log_dest lines for multiple
# logging destinations.
# Possible destinations are: stdout stderr syslog topic file
#
# stdout and stderr log to the console on the named output.
#
# syslog uses the userspace syslog facility which usually ends up
# in /var/log/messages or similar.
#
# topic logs to the broker topic '$SYS/broker/log/<severity>',
# where severity is one of D, E, W, N, I, M which are debug, error,
# warning, notice, information and message. Message type severity is used by
# the subscribe/unsubscribe log_types and publishes log messages to
# $SYS/broker/log/M/susbcribe or $SYS/broker/log/M/unsubscribe.
#
# The file destination requires an additional parameter which is the file to be
# logged to, e.g. "log_dest file /var/log/mosquitto.log". The file will be
# closed and reopened when the broker receives a HUP signal. Only a single file
# destination may be configured.
#
# Note that if the broker is running as a Windows service it will default to
# "log_dest none" and neither stdout nor stderr logging is available.
# Use "log_dest none" if you wish to disable logging.
log_dest syslog
# If using syslog logging (not on Windows), messages will be logged to the
# "daemon" facility by default. Use the log_facility option to choose which of
# local0 to local7 to log to instead. The option value should be an integer
# value, e.g. "log_facility 5" to use local5.
#log_facility
# Types of messages to log. Use multiple log_type lines for logging
# multiple types of messages.
# Possible types are: debug, error, warning, notice, information,
# none, subscribe, unsubscribe, websockets, all.
# Note that debug type messages are for decoding the incoming/outgoing
# network packets. They are not logged in "topics".
#log_type error
#log_type warning
#log_type notice
#log_type information
# Change the websockets logging level. This is a global option, it is not
# possible to set per listener. This is an integer that is interpreted by
# libwebsockets as a bit mask for its lws_log_levels enum. See the
# libwebsockets documentation for more details. "log_type websockets" must also
# be enabled.
#websockets_log_level 0
# If set to true, client connection and disconnection messages will be included
# in the log.
#connection_messages true
# If set to true, add a timestamp value to each log message.
#log_timestamp true
# =================================================================
# Security
# =================================================================
# If set, only clients that have a matching prefix on their
# clientid will be allowed to connect to the broker. By default,
# all clients may connect.
# For example, setting "secure-" here would mean a client "secure-
# client" could connect but another with clientid "mqtt" couldn't.
#clientid_prefixes
# Boolean value that determines whether clients that connect
# without providing a username are allowed to connect. If set to
# false then a password file should be created (see the
# password_file option) to control authenticated client access.
# Defaults to true.
#allow_anonymous true
# In addition to the clientid_prefixes, allow_anonymous and TLS
# authentication options, username based authentication is also
# possible. The default support is described in "Default
# authentication and topic access control" below. The auth_plugin
# allows another authentication method to be used.
# Specify the path to the loadable plugin and see the
# "Authentication and topic access plugin options" section below.
#auth_plugin
# -----------------------------------------------------------------
# Default authentication and topic access control
# -----------------------------------------------------------------
# Control access to the broker using a password file. This file can be
# generated using the mosquitto_passwd utility. If TLS support is not compiled
# into mosquitto (it is recommended that TLS support should be included) then
# plain text passwords are used, in which case the file should be a text file
# with lines in the format:
# username:password
# The password (and colon) may be omitted if desired, although this
# offers very little in the way of security.
#
# See the TLS client require_certificate and use_identity_as_username options
# for alternative authentication options.
#password_file
# Access may also be controlled using a pre-shared-key file. This requires
# TLS-PSK support and a listener configured to use it. The file should be text
# lines in the format:
# identity:key
# The key should be in hexadecimal format without a leading "0x".
#psk_file
# Control access to topics on the broker using an access control list
# file. If this parameter is defined then only the topics listed will
# have access.
# If the first character of a line of the ACL file is a # it is treated as a
# comment.
# Topic access is added with lines of the format:
#
# topic [read|write|readwrite] <topic>
#
# The access type is controlled using "read", "write" or "readwrite". This
# parameter is optional (unless <topic> contains a space character) - if not
# given then the access is read/write. <topic> can contain the + or #
# wildcards as in subscriptions.
#
# The first set of topics are applied to anonymous clients, assuming
# allow_anonymous is true. User specific topic ACLs are added after a
# user line as follows:
#
# user <username>
#
# The username referred to here is the same as in password_file. It is
# not the clientid.
#
#
# If is also possible to define ACLs based on pattern substitution within the
# topic. The patterns available for substition are:
#
# %c to match the client id of the client
# %u to match the username of the client
#
# The substitution pattern must be the only text for that level of hierarchy.
#
# The form is the same as for the topic keyword, but using pattern as the
# keyword.
# Pattern ACLs apply to all users even if the "user" keyword has previously
# been given.
#
# If using bridges with usernames and ACLs, connection messages can be allowed
# with the following pattern:
# pattern write $SYS/broker/connection/%c/state
#
# pattern [read|write|readwrite] <topic>
#
# Example:
#
# pattern write sensor/%u/data
#
#acl_file
# -----------------------------------------------------------------
# Authentication and topic access plugin options
# -----------------------------------------------------------------
# If the auth_plugin option above is used, define options to pass to the
# plugin here as described by the plugin instructions. All options named
# using the format auth_opt_* will be passed to the plugin, for example:
#
# auth_opt_db_host
# auth_opt_db_port
# auth_opt_db_username
# auth_opt_db_password
# =================================================================
# Bridges
# =================================================================
# A bridge is a way of connecting multiple MQTT brokers together.
# Create a new bridge using the "connection" option as described below. Set
# options for the bridges using the remaining parameters. You must specify the
# address and at least one topic to subscribe to.
# Each connection must have a unique name.
# The address line may have multiple host address and ports specified. See
# below in the round_robin description for more details on bridge behaviour if
# multiple addresses are used.
# The direction that the topic will be shared can be chosen by
# specifying out, in or both, where the default value is out.
# The QoS level of the bridged communication can be specified with the next
# topic option. The default QoS level is 0, to change the QoS the topic
# direction must also be given.
# The local and remote prefix options allow a topic to be remapped when it is
# bridged to/from the remote broker. This provides the ability to place a topic
# tree in an appropriate location.
# For more details see the mosquitto.conf man page.
# Multiple topics can be specified per connection, but be careful
# not to create any loops.
# If you are using bridges with cleansession set to false (the default), then
# you may get unexpected behaviour from incoming topics if you change what
# topics you are subscribing to. This is because the remote broker keeps the
# subscription for the old topic. If you have this problem, connect your bridge
# with cleansession set to true, then reconnect with cleansession set to false
# as normal.
#connection <name>
#address <host>[:<port>] [<host>[:<port>]]
#topic <topic> [[[out | in | both] qos-level] local-prefix remote-prefix]
# Set the version of the MQTT protocol to use with for this bridge. Can be one
# of mqttv31 or mqttv311. Defaults to mqttv31.
#bridge_protocol_version mqttv31
# If a bridge has topics that have "out" direction, the default behaviour is to
# send an unsubscribe request to the remote broker on that topic. This means
# that changing a topic direction from "in" to "out" will not keep receiving
# incoming messages. Sending these unsubscribe requests is not always
# desirable, setting bridge_attempt_unsubscribe to false will disable sending
# the unsubscribe request.
#bridge_attempt_unsubscribe true
# If the bridge has more than one address given in the address/addresses
# configuration, the round_robin option defines the behaviour of the bridge on
# a failure of the bridge connection. If round_robin is false, the default
# value, then the first address is treated as the main bridge connection. If
# the connection fails, the other secondary addresses will be attempted in
# turn. Whilst connected to a secondary bridge, the bridge will periodically
# attempt to reconnect to the main bridge until successful.
# If round_robin is true, then all addresses are treated as equals. If a
# connection fails, the next address will be tried and if successful will
# remain connected until it fails
#round_robin false
# Set the client id to use on the remote end of this bridge connection. If not
# defined, this defaults to 'name.hostname' where name is the connection name
# and hostname is the hostname of this computer.
# This replaces the old "clientid" option to avoid confusion. "clientid"
# remains valid for the time being.
#remote_clientid
# Set the clientid to use on the local broker. If not defined, this defaults to
# 'local.<clientid>'. If you are bridging a broker to itself, it is important
# that local_clientid and clientid do not match.
#local_clientid
# Set the clean session variable for this bridge.
# When set to true, when the bridge disconnects for any reason, all
# messages and subscriptions will be cleaned up on the remote
# broker. Note that with cleansession set to true, there may be a
# significant amount of retained messages sent when the bridge
# reconnects after losing its connection.
# When set to false, the subscriptions and messages are kept on the
# remote broker, and delivered when the bridge reconnects.
#cleansession false
# If set to true, publish notification messages to the local and remote brokers
# giving information about the state of the bridge connection. Retained
# messages are published to the topic $SYS/broker/connection/<clientid>/state
# unless the notification_topic option is used.
# If the message is 1 then the connection is active, or 0 if the connection has
# failed.
#notifications true
# Choose the topic on which notification messages for this bridge are
# published. If not set, messages are published on the topic
# $SYS/broker/connection/<clientid>/state
#notification_topic
# Set the keepalive interval for this bridge connection, in
# seconds.
#keepalive_interval 60
# Set the start type of the bridge. This controls how the bridge starts and
# can be one of three types: automatic, lazy and once. Note that RSMB provides
# a fourth start type "manual" which isn't currently supported by mosquitto.
#
# "automatic" is the default start type and means that the bridge connection
# will be started automatically when the broker starts and also restarted
# after a short delay (30 seconds) if the connection fails.
#
# Bridges using the "lazy" start type will be started automatically when the
# number of queued messages exceeds the number set with the "threshold"
# parameter. It will be stopped automatically after the time set by the
# "idle_timeout" parameter. Use this start type if you wish the connection to
# only be active when it is needed.
#
# A bridge using the "once" start type will be started automatically when the
# broker starts but will not be restarted if the connection fails.
#start_type automatic
# Set the amount of time a bridge using the automatic start type will wait
# until attempting to reconnect. Defaults to 30 seconds.
#restart_timeout 30
# Set the amount of time a bridge using the lazy start type must be idle before
# it will be stopped. Defaults to 60 seconds.
#idle_timeout 60
# Set the number of messages that need to be queued for a bridge with lazy
# start type to be restarted. Defaults to 10 messages.
# Must be less than max_queued_messages.
#threshold 10
# If try_private is set to true, the bridge will attempt to indicate to the
# remote broker that it is a bridge not an ordinary client. If successful, this
# means that loop detection will be more effective and that retained messages
# will be propagated correctly. Not all brokers support this feature so it may
# be necessary to set try_private to false if your bridge does not connect
# properly.
#try_private true
# Set the username to use when connecting to a broker that requires
# authentication.
# This replaces the old "username" option to avoid confusion. "username"
# remains valid for the time being.
#remote_username
# Set the password to use when connecting to a broker that requires
# authentication. This option is only used if remote_username is also set.
# This replaces the old "password" option to avoid confusion. "password"
# remains valid for the time being.
#remote_password
# -----------------------------------------------------------------
# Certificate based SSL/TLS support
# -----------------------------------------------------------------
# Either bridge_cafile or bridge_capath must be defined to enable TLS support
# for this bridge.
# bridge_cafile defines the path to a file containing the
# Certificate Authority certificates that have signed the remote broker
# certificate.
# bridge_capath defines a directory that will be searched for files containing
# the CA certificates. For bridge_capath to work correctly, the certificate
# files must have ".crt" as the file ending and you must run "c_rehash <path to
# capath>" each time you add/remove a certificate.
#bridge_cafile
#bridge_capath
# Path to the PEM encoded client certificate, if required by the remote broker.
#bridge_certfile
# Path to the PEM encoded client private key, if required by the remote broker.
#bridge_keyfile
# When using certificate based encryption, bridge_insecure disables
# verification of the server hostname in the server certificate. This can be
# useful when testing initial server configurations, but makes it possible for
# a malicious third party to impersonate your server through DNS spoofing, for
# example. Use this option in testing only. If you need to resort to using this
# option in a production environment, your setup is at fault and there is no
# point using encryption.
#bridge_insecure false
# -----------------------------------------------------------------
# PSK based SSL/TLS support
# -----------------------------------------------------------------
# Pre-shared-key encryption provides an alternative to certificate based
# encryption. A bridge can be configured to use PSK with the bridge_identity
# and bridge_psk options. These are the client PSK identity, and pre-shared-key
# in hexadecimal format with no "0x". Only one of certificate and PSK based
# encryption can be used on one
# bridge at once.
#bridge_identity
#bridge_psk
# =================================================================
# External config files
# =================================================================
# External configuration files may be included by using the
# include_dir option. This defines a directory that will be searched
# for config files. All files that end in '.conf' will be loaded as
# a configuration file. It is best to have this as the last option
# in the main file. This option will only be processed from the main
# configuration file. The directory specified must not contain the
# main configuration file.
#include_dir
# =================================================================
# rsmb options - unlikely to ever be supported
# =================================================================
#ffdc_output
#max_log_entries
#trace_level
#trace_output
{
"id": 2,
"title": "test",
"originalTitle": "test",
"tags": [],
"style": "dark",
"timezone": "browser",
"editable": true,
"hideControls": false,
"sharedCrosshair": false,
"rows": [
{
"collapse": false,
"editable": true,
"height": 244.36648559570312,
"panels": [
{
"aliasColors": {},
"bars": false,
"datasource": "influx-local",
"editable": true,
"error": false,
"fill": 1,
"grid": {
"threshold1": null,
"threshold1Color": "rgba(216, 200, 27, 0.27)",
"threshold2": null,
"threshold2Color": "rgba(234, 112, 112, 0.22)"
},
"id": 2,
"isNew": true,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"span": 5.319171964541548,
"stack": false,
"steppedLine": false,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"auto"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"policy": "default",
"query": "SELECT first(\"value\") FROM \"mcx_db\".\"autogen\".\"speed\" WHERE \"id\" =~ /^$lanes$/ and time > now() - 6h GROUP BY time(30s) FILL(null)",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"policy": "default",
"query": "SELECT HOLT_WINTERS(FIRST(\"value\"),500,5) FROM \"mcx_db\".\"autogen\".\"speed\" WHERE \"id\" =~ /^$lanes$/ and time > now() - 6h GROUP BY time(30s)",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"timeFrom": null,
"timeShift": null,
"title": "Speed and Predicted",
"tooltip": {
"msResolution": true,
"shared": true,
"value_type": "cumulative"
},
"transparent": false,
"type": "graph",
"xaxis": {
"show": true
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
]
},
{
"aliasColors": {},
"bars": false,
"datasource": "influx-local",
"editable": true,
"error": false,
"fill": 1,
"grid": {
"threshold1": null,
"threshold1Color": "rgba(216, 200, 27, 0.27)",
"threshold2": null,
"threshold2Color": "rgba(234, 112, 112, 0.22)"
},
"id": 5,
"isNew": true,
"legend": {
"avg": false,
"current": false,
"max": false,
"min": false,
"show": true,
"total": false,
"values": false
},
"lines": true,
"linewidth": 2,
"links": [],
"nullPointMode": "connected",
"percentage": false,
"pointradius": 5,
"points": false,
"renderer": "flot",
"seriesOverrides": [],
"span": 5.718670951602794,
"stack": false,
"steppedLine": false,
"targets": [
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"hide": false,
"policy": "default",
"query": "SELECT value FROM speed where \"id\" =~ /^$lanes$/",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
},
{
"dsType": "influxdb",
"groupBy": [
{
"params": [
"$interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"policy": "default",
"query": "SELECT value FROM vehicleCount where \"id\" =~ /^$lanes$/",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"value"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": []
}
],
"timeFrom": null,
"timeShift": null,
"title": "Speed & Count",
"tooltip": {
"msResolution": true,
"shared": true,
"value_type": "cumulative"
},
"type": "graph",
"xaxis": {
"show": true
},
"yaxes": [
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
},
{
"format": "short",
"label": null,
"logBase": 1,
"max": null,
"min": null,
"show": true
}
]
}
],
"title": "Row"
}
],
"time": {
"from": "now-1h",
"to": "now"
},
"timepicker": {
"refresh_intervals": [
"5s",
"10s",
"30s",
"1m",
"5m",
"15m",
"30m",
"1h",
"2h",
"1d"
],
"time_options": [
"5m",
"15m",
"1h",
"6h",
"12h",
"24h",
"2d",
"7d",
"30d"
]
},
"templating": {
"list": [
{
"current": {
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-3",
"tags": []
},
"datasource": "influx-local",
"hide": 0,
"includeAll": false,
"label": "traffic-lane",
"multi": false,
"name": "lanes",
"options": [
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1008-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1008-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1008-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1008-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1017-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1017-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1018-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1018-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1018-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1018-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1022-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1022-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1022-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1022-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1023-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1023-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1024-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1024-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1026-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1026-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1029-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1029-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1029-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1029-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1030-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1030-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1032-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1032-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1033-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1033-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1034-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1034-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1042-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1042-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1047-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1047-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1052-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1052-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1054-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1054-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1061-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1061-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1062-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1062-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1062-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1062-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1064-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1064-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1064-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1064-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1064-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1064-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1065-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1065-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1065-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1065-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1066-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1066-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1068-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1068-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1068-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1068-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1068-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1068-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1070-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1070-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1070-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1070-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1071-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1071-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1071-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1071-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1071-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1071-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1072-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1072-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1072-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1072-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1072-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1072-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1073-3",
"selected": true
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1074-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1074-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1074-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1074-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1074-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1074-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1077-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1077-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1077-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1077-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1077-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1077-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1078-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1078-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1078-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1078-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1078-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1078-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1079-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1079-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1079-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1079-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1079-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1079-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1081-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1081-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1081-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1081-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1082-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1082-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1082-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1082-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1082-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1082-3",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1083-1",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1083-1",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1083-2",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1083-2",
"selected": false
},
{
"text": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1083-3",
"value": "thing/traffic-lane/san-diego/traffic-lane/LOCATION-20-1083-3",
"selected": false
}
],
"query": "SHOW TAG VALUES WITH KEY = \"id\"",
"refresh": 1,
"regex": "/thing/traffic-lane*/",
"type": "query"
}
]
},
"annotations": {
"list": [
{
"datasource": "influx-local",
"enable": true,
"iconColor": "rgba(255, 96, 96, 1)",
"name": "ann1",
"query": "SELECT id, units from speed WHERE $timeFilter"
}
]
},
"refresh": "30s",
"schemaVersion": 12,
"version": 13,
"links": []
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment