diff --git a/deploy/grafana-dashboard/panels/availability_row.py b/deploy/grafana-dashboard/panels/availability_row.py index 005cfa3..6f28527 100644 --- a/deploy/grafana-dashboard/panels/availability_row.py +++ b/deploy/grafana-dashboard/panels/availability_row.py @@ -8,7 +8,7 @@ prewarming_pool_size = BarGauge( title="Prewarming Pool Size", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("prewarming-pool-size"))], - gridPos=GridPos(h=10, w=11, x=0, y=3), + gridPos=GridPos(h=10, w=11, x=0, y=1), allValues=True, orientation=ORIENTATION_VERTICAL, displayMode=GAUGE_DISPLAY_MODE_BASIC, @@ -19,7 +19,7 @@ idle_runner = TimeSeries( title="Idle Runner", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("idle-runner"))], - gridPos=GridPos(h=10, w=13, x=11, y=3), + gridPos=GridPos(h=10, w=13, x=11, y=1), lineInterpolation="stepAfter", maxDataPoints=None ) @@ -28,7 +28,7 @@ runner_startup_duration = TimeSeries( title="Runner startup duration", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("runner-startup-duration"))], - gridPos=GridPos(h=10, w=12, x=0, y=13), + gridPos=GridPos(h=10, w=12, x=0, y=11), unit="ns", ) @@ -36,18 +36,20 @@ used_runner = TimeSeries( title="Used Runner", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("used-runner"))], - gridPos=GridPos(h=10, w=12, x=12, y=13), + gridPos=GridPos(h=10, w=12, x=12, y=11), maxDataPoints=None ) availability_row = RowPanel( title="Availability", - collapsed=True, - gridPos=GridPos(h=1, w=24, x=0, y=2), - panels=[ - prewarming_pool_size, - idle_runner, - runner_startup_duration, - used_runner - ] + collapsed=False, + gridPos=GridPos(h=1, w=24, x=0, y=0), ) + +availability_panels = [ + availability_row, + prewarming_pool_size, + idle_runner, + runner_startup_duration, + used_runner, +] diff --git a/deploy/grafana-dashboard/panels/general_row.py b/deploy/grafana-dashboard/panels/general_row.py index d968e72..19e2e80 100644 --- a/deploy/grafana-dashboard/panels/general_row.py +++ b/deploy/grafana-dashboard/panels/general_row.py @@ -9,7 +9,7 @@ requests_per_minute = TimeSeries( title="Requests per minute", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("requests-per-minute"))], - gridPos=GridPos(h=9, w=8, x=0, y=1), + gridPos=GridPos(h=9, w=8, x=0, y=22), scaleDistributionType="log", extraJson=grey_all_mapping ) @@ -19,7 +19,7 @@ request_latency = Heatmap( dataSource='Poseidon', dataFormat="timeseries", targets=[InfluxDBTarget(query=read_query("request-latency"))], - gridPos=GridPos(h=9, w=8, x=8, y=1), + gridPos=GridPos(h=9, w=8, x=8, y=22), maxDataPoints=None, extraJson={ "options": {}, @@ -33,7 +33,7 @@ service_time = TimeSeries( title="Service time (99.9%)", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("service-time"))], - gridPos=GridPos(h=9, w=8, x=16, y=1), + gridPos=GridPos(h=9, w=8, x=16, y=22), scaleDistributionType="log", scaleDistributionLog=10, unit="ns", @@ -44,7 +44,7 @@ current_environment_count = Stat( title="Current environment count", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("current-environment-count"))], - gridPos=GridPos(h=6, w=8, x=0, y=10), + gridPos=GridPos(h=6, w=8, x=0, y=31), alignment='center' ) @@ -52,7 +52,7 @@ currently_used_runners = Stat( title="Currently used runners", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("currently-used-runners"))], - gridPos=GridPos(h=6, w=8, x=8, y=10), + gridPos=GridPos(h=6, w=8, x=8, y=31), alignment="center" ) @@ -60,7 +60,7 @@ number_of_executions = BarGauge( title="Number of Executions", dataSource="Poseidon", targets=[InfluxDBTarget(query=read_query("number-of-executions"))], - gridPos=GridPos(h=6, w=8, x=16, y=10), + gridPos=GridPos(h=6, w=8, x=16, y=31), allValues=True, orientation=ORIENTATION_VERTICAL, displayMode=GAUGE_DISPLAY_MODE_BASIC, @@ -71,7 +71,7 @@ execution_duration = BarGauge( title="Execution duration", dataSource="Poseidon", targets=[InfluxDBTarget(query=read_query("execution-duration"))], - gridPos=GridPos(h=11, w=8, x=0, y=16), + gridPos=GridPos(h=11, w=8, x=0, y=37), allValues=True, displayMode=GAUGE_DISPLAY_MODE_GRADIENT, format="ns", @@ -82,7 +82,7 @@ executions_per_runner = BarGauge( title="Executions per runner", dataSource="Poseidon", targets=[InfluxDBTarget(query=read_query("executions-per-runner"))], - gridPos=GridPos(h=11, w=8, x=8, y=16), + gridPos=GridPos(h=11, w=8, x=8, y=37), allValues=True, displayMode=GAUGE_DISPLAY_MODE_GRADIENT, max=None, @@ -92,7 +92,7 @@ executions_per_minute = BarGauge( title="Executions per minute", dataSource="Poseidon", targets=[InfluxDBTarget(query=read_query("executions-per-minute"))], - gridPos=GridPos(h=11, w=8, x=16, y=16), + gridPos=GridPos(h=11, w=8, x=16, y=37), allValues=True, displayMode=GAUGE_DISPLAY_MODE_GRADIENT, max=None, @@ -100,17 +100,19 @@ executions_per_minute = BarGauge( general_row = RowPanel( title="General", - collapsed=True, - gridPos=GridPos(h=1, w=24, x=0, y=0), - panels=[ - requests_per_minute, - request_latency, - service_time, - current_environment_count, - currently_used_runners, - number_of_executions, - execution_duration, - executions_per_runner, - executions_per_minute - ] + collapsed=False, + gridPos=GridPos(h=1, w=24, x=0, y=21), ) + +general_panels = [ + general_row, + requests_per_minute, + request_latency, + service_time, + current_environment_count, + currently_used_runners, + number_of_executions, + execution_duration, + executions_per_runner, + executions_per_minute +] diff --git a/deploy/grafana-dashboard/panels/poseidon.dashboard.py b/deploy/grafana-dashboard/panels/poseidon.dashboard.py index 8fe3146..95b6f09 100644 --- a/deploy/grafana-dashboard/panels/poseidon.dashboard.py +++ b/deploy/grafana-dashboard/panels/poseidon.dashboard.py @@ -1,18 +1,14 @@ from grafanalib.core import Dashboard, Templating, Time -from panels.availability_row import availability_row -from panels.general_row import general_row -from panels.runner_insights_row import runner_insights_row +from panels.availability_row import availability_panels +from panels.general_row import general_panels +from panels.runner_insights_row import runner_insights_panels from utils.variables import stage_variable, environment_variable dashboard = Dashboard( title="Poseidon autogen", timezone="browser", - panels=[ - general_row, - runner_insights_row, - availability_row - ], + panels=availability_panels + general_panels + runner_insights_panels, templating=Templating(list=[ stage_variable, environment_variable diff --git a/deploy/grafana-dashboard/panels/runner_insights_row.py b/deploy/grafana-dashboard/panels/runner_insights_row.py index da12081..4d56686 100644 --- a/deploy/grafana-dashboard/panels/runner_insights_row.py +++ b/deploy/grafana-dashboard/panels/runner_insights_row.py @@ -14,7 +14,7 @@ execution_duration = Histogram( title="Execution duration", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("execution-duration-hist"))], - gridPos=GridPos(h=8, w=24, x=0, y=2), + gridPos=GridPos(h=8, w=24, x=0, y=49), bucketSize=100000000, colorMode="palette-classic", maxDataPoints=None, @@ -25,7 +25,7 @@ executions_per_runner = Histogram( title="Executions per runner", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("executions-per-runner-hist"))], - gridPos=GridPos(h=10, w=11, x=0, y=10), + gridPos=GridPos(h=10, w=11, x=0, y=57), bucketSize=1, colorMode="palette-classic", ) @@ -34,7 +34,7 @@ executions_per_minute = TimeSeries( title="Executions per minute", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("executions-per-minute-time"))], - gridPos=GridPos(h=10, w=13, x=11, y=10), + gridPos=GridPos(h=10, w=13, x=11, y=57), maxDataPoints=None ) @@ -42,7 +42,7 @@ request_body_size = TimeSeries( title="Request Body Size", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("request-body-size"))], - gridPos=GridPos(h=10, w=11, x=0, y=20), + gridPos=GridPos(h=10, w=11, x=0, y=67), scaleDistributionType="log", unit="bytes", maxDataPoints=None @@ -52,19 +52,21 @@ runner_per_minute = TimeSeries( title="Runner per minute", dataSource='Poseidon', targets=[InfluxDBTarget(query=read_query("runner-per-minute"))], - gridPos=GridPos(h=10, w=13, x=11, y=20), + gridPos=GridPos(h=10, w=13, x=11, y=67), maxDataPoints=None ) runner_insights_row = RowPanel( title="Runner Insights", - collapsed=True, - gridPos=GridPos(h=1, w=24, x=0, y=1), - panels=[ - execution_duration, - executions_per_runner, - executions_per_minute, - request_body_size, - runner_per_minute - ] + collapsed=False, + gridPos=GridPos(h=1, w=24, x=0, y=48), ) + +runner_insights_panels = [ + runner_insights_row, + execution_duration, + executions_per_runner, + executions_per_minute, + request_body_size, + runner_per_minute, +]