From 7eb2d3fde25e90ee7c5cdf4dd3ee0c4d06f08c8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20H=C3=B6ning?= Date: Thu, 25 Jun 2026 15:19:42 +0200 Subject: [PATCH 1/7] show how to get job info from status page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolas Höning --- documentation/views/asset-data.rst | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/documentation/views/asset-data.rst b/documentation/views/asset-data.rst index 62e29d39a5..d16938c6f1 100644 --- a/documentation/views/asset-data.rst +++ b/documentation/views/asset-data.rst @@ -188,8 +188,19 @@ Below is a fictious example, where the toy battery (from our tutorial) has sched | -Hovering over the traffic light will tell you how long ago this most recent entry is and why the light is red, yellow or green. For jobs, you can also get more information (e.g. error message). +Hovering over the traffic light will tell you how long ago this most recent entry is and why the light is red, yellow or green. +For jobs, you can also get more information (e.g. error message) by hovering over the traffic light. + +You can also click the "Info" button, to see much information about how the scheduling or forecasting job +was configured. Here is an example: + + +.. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_status_page_job_info.png + :align: center +.. :scale: 40% + +| .. _view_asset_auditlog: From f5a0f128229a96a72392cc4025fa5d0c51caf011 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20H=C3=B6ning?= Date: Thu, 25 Jun 2026 15:20:10 +0200 Subject: [PATCH 2/7] Section on the various ways to inspect scheduling jobs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolas Höning --- documentation/features/scheduling.rst | 46 +++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/documentation/features/scheduling.rst b/documentation/features/scheduling.rst index 1643330a6d..f90af4b4f7 100644 --- a/documentation/features/scheduling.rst +++ b/documentation/features/scheduling.rst @@ -337,3 +337,49 @@ Here are some thoughts on further innovation: This is ongoing architecture design work, and therefore happens in development settings, until we are happy with the outcomes. Thoughts welcome :) - Aggregating flexibility of a group of assets (e.g. a neighborhood) and optimizing its aggregated usage (e.g. for grid congestion support) is also an exciting direction for expansion. + + + +Inspecting schedules +----------------------- + +It can be crucial to inspect how your scheduling job is doing. +Here are some ways to do that: + +Errors +^^^^^^^ + +FlexMeasures will validate flex-config and asset & sensor IDs before starting the job, +and let you know (in the console or API response) what went wrong. + + +The asset status page +^^^^^^^^^^^^^^^^^^^^^ + +Each asset has a status page where you can find recent jobs, and the "Info" button will give you a lot +og insight into its configuration. + +.. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_status_page_job_info.png + :align: center +.. :scale: 40% + +| + + +Checking the status via the API +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +There is an API endpoint specifically for checking status, result and configuration info for jobs: +``GET /api/v3_0/jobs/{uuid}`` will return JSON with information, including the flex config and exception info. + + +The RQ-dashboard +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Internally, jobs are queued with the python-rq library. For this, a job dashboard is available, which +users with the ``admin`` role can access via the menu. You find your jobs via the queues, see screesnhot below. +Clicking a job gives you more information. + +.. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_rq_dashboard.png + :align: center +.. :scale: 40% \ No newline at end of file From 3debfb9d9a1e33e2de1aaf5047b576e6cad4fbb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20H=C3=B6ning?= Date: Thu, 25 Jun 2026 15:24:20 +0200 Subject: [PATCH 3/7] add changelog entry MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolas Höning --- documentation/changelog.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/documentation/changelog.rst b/documentation/changelog.rst index 26339dbb80..3829e67396 100644 --- a/documentation/changelog.rst +++ b/documentation/changelog.rst @@ -23,6 +23,7 @@ Infrastructure / Support * Documentation section on the modelling choice for recording measurements, forecasts and schedules under one or multiple sensors [see `PR #2217 `_] * Document suggested cloud architecture [see `PR #2245 `_] * Document the ``TRUSTED_HOSTS`` setting to safeguard against host poisoning from clients [see `PR #2246 `_] +* Document the varoius ways to inspect a (scheduling) job [see `PR #2247 `_] Bugfixes ----------- From 234c1ed2d893cc42c6bcf9c05826afe2b185b5df Mon Sep 17 00:00:00 2001 From: Mohamed Belhsan Hmida Date: Sun, 28 Jun 2026 20:32:17 +0100 Subject: [PATCH 4/7] fix(docs): fix typos Signed-off-by: Mohamed Belhsan Hmida --- documentation/changelog.rst | 2 +- documentation/features/scheduling.rst | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/documentation/changelog.rst b/documentation/changelog.rst index 3829e67396..1cdc056e5f 100644 --- a/documentation/changelog.rst +++ b/documentation/changelog.rst @@ -23,7 +23,7 @@ Infrastructure / Support * Documentation section on the modelling choice for recording measurements, forecasts and schedules under one or multiple sensors [see `PR #2217 `_] * Document suggested cloud architecture [see `PR #2245 `_] * Document the ``TRUSTED_HOSTS`` setting to safeguard against host poisoning from clients [see `PR #2246 `_] -* Document the varoius ways to inspect a (scheduling) job [see `PR #2247 `_] +* Document the various ways to inspect a (scheduling) job [see `PR #2247 `_] Bugfixes ----------- diff --git a/documentation/features/scheduling.rst b/documentation/features/scheduling.rst index f90af4b4f7..749edae72d 100644 --- a/documentation/features/scheduling.rst +++ b/documentation/features/scheduling.rst @@ -357,7 +357,7 @@ The asset status page ^^^^^^^^^^^^^^^^^^^^^ Each asset has a status page where you can find recent jobs, and the "Info" button will give you a lot -og insight into its configuration. +of insight into its configuration. .. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_status_page_job_info.png :align: center @@ -377,9 +377,9 @@ The RQ-dashboard ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Internally, jobs are queued with the python-rq library. For this, a job dashboard is available, which -users with the ``admin`` role can access via the menu. You find your jobs via the queues, see screesnhot below. +users with the ``admin`` role can access via the menu. You find your jobs via the queues, see screenshot below. Clicking a job gives you more information. .. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_rq_dashboard.png :align: center -.. :scale: 40% \ No newline at end of file +.. :scale: 40% From 2c8cffb44d08f0b4ac7237d8c4f31e52dfe740e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20H=C3=B6ning?= Date: Mon, 29 Jun 2026 00:06:27 +0200 Subject: [PATCH 5/7] Update documentation/features/scheduling.rst MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolas Höning --- documentation/features/scheduling.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/features/scheduling.rst b/documentation/features/scheduling.rst index 749edae72d..cd10eea034 100644 --- a/documentation/features/scheduling.rst +++ b/documentation/features/scheduling.rst @@ -370,7 +370,7 @@ Checking the status via the API ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ There is an API endpoint specifically for checking status, result and configuration info for jobs: -``GET /api/v3_0/jobs/{uuid}`` will return JSON with information, including the flex config and exception info. +``GET /api/v3_0/jobs/{uuid}`` returns JSON with the job status, result, queue and function metadata, timestamps, and exception traceback information for failed jobs. The RQ-dashboard From 9dea6b4e8598fa186411ecea164fca2cf2075c3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20H=C3=B6ning?= Date: Mon, 29 Jun 2026 11:56:59 +0200 Subject: [PATCH 6/7] add the CLI command for inspecting a schedule, as well MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolas Höning --- documentation/features/scheduling.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/documentation/features/scheduling.rst b/documentation/features/scheduling.rst index cd10eea034..49cb5af648 100644 --- a/documentation/features/scheduling.rst +++ b/documentation/features/scheduling.rst @@ -373,6 +373,15 @@ There is an API endpoint specifically for checking status, result and configurat ``GET /api/v3_0/jobs/{uuid}`` returns JSON with the job status, result, queue and function metadata, timestamps, and exception traceback information for failed jobs. +Checking the status via the API +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +There is also a CLI command, which basically mirrors what the API endpoint does (see above). Here is an example call: + +.. code-block:: bash + flexmeasures jobs inspect-job --job 40ac6f2e-690d-4865-8203-429e54179112 + + The RQ-dashboard ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ From fe7e2f15f31053c71cdae32a603554c72580f7a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20H=C3=B6ning?= Date: Mon, 29 Jun 2026 12:03:26 +0200 Subject: [PATCH 7/7] re-order sections MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Nicolas Höning --- documentation/features/scheduling.rst | 38 +++++++++++++++------------ 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/documentation/features/scheduling.rst b/documentation/features/scheduling.rst index 49cb5af648..6399d867af 100644 --- a/documentation/features/scheduling.rst +++ b/documentation/features/scheduling.rst @@ -353,19 +353,6 @@ FlexMeasures will validate flex-config and asset & sensor IDs before starting th and let you know (in the console or API response) what went wrong. -The asset status page -^^^^^^^^^^^^^^^^^^^^^ - -Each asset has a status page where you can find recent jobs, and the "Info" button will give you a lot -of insight into its configuration. - -.. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_status_page_job_info.png - :align: center -.. :scale: 40% - -| - - Checking the status via the API ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -379,15 +366,32 @@ Checking the status via the API There is also a CLI command, which basically mirrors what the API endpoint does (see above). Here is an example call: .. code-block:: bash + flexmeasures jobs inspect-job --job 40ac6f2e-690d-4865-8203-429e54179112 -The RQ-dashboard -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +The asset status page: listing jobs and more info +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Each asset has a status page where you can find recent jobs which were run in the context of this asset. +Clicking the "Info" button will give you a lot more insights into the jobs' configuration than the above methods. + +.. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_status_page_job_info.png + :align: center +.. :scale: 40% + +| + + +The RQ-dashboard: complete overview +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Internally, jobs are queued with the python-rq library. For this, a job dashboard is available, which -users with the ``admin`` role can access via the menu. You find your jobs via the queues, see screenshot below. -Clicking a job gives you more information. +users with the ``admin`` role can access via the menu. This gives a complete overview over all jobs +running in FlexMeasures. + +You find your jobs via the queues, see screenshot below. +Clicking a job gives you more information, similar to the status page. .. image:: https://github.com/FlexMeasures/screenshots/raw/main/screenshot_rq_dashboard.png :align: center