Skip to content

Commit

Permalink
refactor: Rework support scheduler docs into 3.1 format
Browse files Browse the repository at this point in the history
Closes #1269

Signed-off-by: Elizabeth J Lee <elizabeth.j.lee@intel.com>
  • Loading branch information
ejlee3 committed Oct 26, 2023
1 parent b03ffc8 commit 284d662
Show file tree
Hide file tree
Showing 11 changed files with 170 additions and 164 deletions.
2 changes: 1 addition & 1 deletion docs_src/api/support/Ch-APISupportScheduler.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Support Scheduler

EdgeX Foundry's Support Scheduler microservice to schedule actions to occur on specific intervals. See
[Support Scheduler](../../microservices/support/scheduler/Ch-Scheduler.md) for more details about this service.
[Support Scheduler](../../microservices/support/scheduler/Purpose.md) for more details about this service.

## Swagger

Expand Down
4 changes: 2 additions & 2 deletions docs_src/general/ServiceConfiguration.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Service Configuration

Each EdgeX micro service requires configuration (i.e. - a repository of initialization and operating values). The configuration is initially provided by a [YAML](https://en.wikipedia.org/wiki/YAML) file but a service can utilize the centralized configuration management provided by EdgeX for its configuration.
Each EdgeX microservice requires configuration (i.e. - a repository of initialization and operating values). The configuration is initially provided by a [YAML](https://en.wikipedia.org/wiki/YAML) file but a service can utilize the centralized configuration management provided by EdgeX for its configuration.

See the [Configuration and Registry documentation](../microservices/configuration/ConfigurationAndRegistry.md) for more details about initialization of services and the use of the configuration service.

Expand All @@ -18,7 +18,7 @@ Please refer to the general [Common Configuration documentation](../microservice
|Service Name|Configuration Reference|
|---|---|
|support-notifications |[Support Notifications Configuration](../microservices/support/notifications/Ch-AlertsNotifications.md#configuration-properties)|
|support-scheduler| [Support Scheduler Configuration](../microservices/support/scheduler/Ch-Scheduler.md#configuration-properties)|
|support-scheduler| [Support Scheduler Configuration](../microservices/support/scheduler/Configuration.md)|
=== "Application & Analytics"
|Service Name| Configuration Reference|
|---|---|
Expand Down
9 changes: 6 additions & 3 deletions docs_src/getting-started/tools/Ch-GUI.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ The Dashboard page (the main page of the GUI) presents you with a set of clickab
- the number of [device services](../../microservices/device/Ch-DeviceServices.md) that it is aware of and their status (locked vs unlocked)
- the number of devices being managed by EdgeX (through the associated device services)
- the number of [device profiles](../../microservices/core/metadata/details/DeviceProfile.md) registered with core metadata
- the number of [schedules](../../microservices/support/scheduler/Ch-Scheduler.md) (or intervals) EdgeX is managing
- the number of [schedules](../../microservices/support/scheduler/Purpose.md) (or intervals) EdgeX is managing
- the number of [notifications](../../microservices/support/notifications/Ch-AlertsNotifications.md) EdgeX has seen
- the number of [events and readings](../../microservices/core/data/details/EventsAndReadings.md) generated by device services and passing through core data

Expand Down Expand Up @@ -193,8 +193,11 @@ Interval and Interval Actions, which help define task management schedules in Ed

Again, as with many of the EdgeX GUI pages, there are two tabs on the Scheduler page:

- Interval List to display, add, edit and delete [Intervals](../../microservices/support/scheduler/Ch-Scheduler.md#interval)
- Interval Action List to display, add, edit and delete [Interval Actions](../../microservices/support/scheduler/Ch-Scheduler.md#intervalaction) which must be associated to an Interval
- Interval List to display, add, edit and delete Intervals
- Interval Action List to display, add, edit and delete Interval Actions which must be associated with an Interval

!!! Note
Information about **Intervals** and **Interval Actions** can be found in the corresponding tabs of the [Configuration](../../microservices/support/scheduler/Configuration.md) description.

#### Interval List

Expand Down
2 changes: 1 addition & 1 deletion docs_src/microservices/support/Ch-SupportingServices.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ These services often need some amount of core services to function. In all case
Supporting services include:

- [Rules Engine](./eKuiper/Ch-eKuiper.md): the reference implementation edge analytics service that performs if-then conditional [actuation](../../general/Definitions.md#actuate) at the edge based on sensor data collected by the EdgeX instance. Replace or augment this service with use case specific analytics capability.
- [Support Scheduler](./scheduler/Ch-Scheduler.md): an internal EdgeX “clock” that can kick off operations in any EdgeX service. At a configuration specified time, the service will call on any EdgeX service API URL via REST to trigger an operation. For example, at appointed times, the scheduler service calls on core data APIs to expunge old sensed events already exported out of EdgeX.
- [Support Scheduler](./scheduler/Purpose.md): an internal EdgeX “clock” that can kick off operations in any EdgeX service. At a configuration specified time, the service will call on any EdgeX service API URL via REST to trigger an operation. For example, at appointed times, the scheduler service calls on core data APIs to expunge old sensed events already exported out of EdgeX.
- [Support Notifications](./notifications/Ch-AlertsNotifications.md): provides EdgeX services with a central facility to send out notifications. These are notices sent to another system or to a person monitoring the EdgeX instance (internal service communications are often handled more directly).
10 changes: 10 additions & 0 deletions docs_src/microservices/support/scheduler/ApiReference.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: Support Scheduler - API Reference
---

# Support Scheduler - API Reference


EdgeX Foundry's Support Scheduler microservice schedules actions to occur on specific intervals.

<swagger-ui src="https://github.com/raw/edgexfoundry/edgex-go/{{edgexversion}}/openapi/{{api_version}}/support-scheduler.yaml"/>
156 changes: 0 additions & 156 deletions docs_src/microservices/support/scheduler/Ch-Scheduler.md

This file was deleted.

67 changes: 67 additions & 0 deletions docs_src/microservices/support/scheduler/Configuration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
---
title: Support Scheduler - Configuration
---

# Support Scheduler - Configuration

Please refer to the general [Common Configuration documentation](../../configuration/CommonConfiguration.md) for configuration settings common to all services.
Below are only the additional settings and sections that are specific to Support Scheduler.

!!! edgey "Edgex 3.0"
For EdgeX 3.0 the `MessageQueue` configuration has been moved to `MessageBus` in [Common Configuration](../../../configuration/CommonConfiguration/#configuration-properties)

=== "Writable"
|Property|Default Value|Description|
|---|---|---|
||Writable properties can be set and will dynamically take effect without service restart|
|LogLevel|INFO|log entry [severity level](https://en.wikipedia.org/wiki/Syslog#Severity_level). Log entries not of the default level or higher are ignored. |
=== "Writable.Telemetry"
|Property|Default Value|Description|
|---|---|---|
|||See `Writable.Telemetry` at [Common Configuration](../../../configuration/CommonConfiguration/#configuration-properties) for the Telemetry configuration common to all services |
|Metrics| `TBD` |Service metrics that Support Scheduler collects. Boolean value indicates if reporting of the metric is enabled.|
|Tags|`<empty>`|List of arbitrary service level tags to included with every metric that is reported. i.e. `Gateway="my-iot-gateway"` |
=== "ScheduleIntervalTime"
|Property|Default Value|Description|
|---|---|---|
|ScheduleIntervalTime|500|the time, in milliseconds, to trigger any applicable interval actions|
=== "Service"
|Property|Default Value|Description|
|---|---|---|
||| Unique settings for Support Scheduler. The common settings can be found at [Common Configuration](../../../configuration/CommonConfiguration/#configuration-properties)
| Port | 59861|Micro service port number|
|StartupMsg |This is the Support Scheduler Microservice|Message logged when service completes bootstrap start-up|
=== "Database"
|Property|Default Value|Description|
|---|---|---|
||| Unique settings for Support Scheduler. The common settings can be found at [Common Configuration](../../../configuration/CommonConfiguration/#configuration-properties)
|Name|'scheduler'|Document store or database name|
=== "MessageBus.Optional"
|Property|Default Value|Description|
|---|---|---|
||| Unique settings for Support Notifications. The common settings can be found at [Common Configuration](../../../configuration/CommonConfiguration/#configuration-properties)
|ClientId|"support-scheduler| Id used when connecting to MQTT or NATS base MessageBus |
=== "Intervals/Intervals.Midnight"
|Property|Default Value|Description|
|---|---|---|
||Default intervals for use with default interval actions|
|Name|midnight|Name of the every day at midnight interval|
|Start|20180101T000000|Indicates the start time for the midnight interval which is a midnight, Jan 1, 2018 which effectively sets the start time as of right now since this is in the past|
|Interval|24h|defines a frequency of every 24 hours|
=== "IntervalActions.IntervalActions.ScrubAged"
|Property|Default Value|Description|
|---|---|---|
||Configuration of the core data clean old events operation which is to kick off every midnight|
|Name|scrub-aged-events|name of the interval action|
|Host|localhost|run the request on core data assumed to be on the localhost|
|Port|59880|run the request against the default core data port|
|Protocol|http|Make a RESTful request to core data|
|Method|DELETE|Make a RESTful delete operation request to core data|
|Path|/api/{{api_version}}/event/age/604800000000000|request core data's remove old events API with parameter of 7 days |
|Interval|midnight|run the operation every midnight as specified by the configuration defined interval|

## V3 Configuration Migration Guide
- Removed `RequireMessageBus`
- A new field `AuthMethod` is added to `IntervalActions.ScrubAged`

See [Common Configuration Reference](../../../configuration/V3MigrationCommonConfig/) for complete details on common configuration changes.
Loading

0 comments on commit 284d662

Please sign in to comment.