OP-3720: added error-alert and deliver-email-service to send mails when errors occur in dump jobs

This commit is contained in:
Damon
2026-01-22 15:46:21 +01:00
parent f47847d5fd
commit dfcbef269d
6 changed files with 120 additions and 0 deletions

View File

@@ -1,4 +1,18 @@
# Changelog
## unreleased
### General
- [OP-3720]: Delta background job having errors/getting stuck, send an email
### Deploy instructions
#### For error-alert and deliver-email-service
Per environment a specfic configuration for the email service
#### Deploy instructions
```
drc restart migrations deltanotifier
drc up -d error-alert deliver-email-service
```
## 1.38.0 (2026-01-08)
### General
- [OP-3590]: OP is now master of "aantal houders" of mandates

View File

@@ -178,6 +178,27 @@ export default [
ignoreFromSelf: true,
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
match: {
predicate: {
type: 'uri',
value: 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type'
},
object: {
type: 'uri',
value:'http://open-services.net/ns/core#Error'
}
},
callback: {
url: 'http://error-alert/delta',
method:'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true
}
}
/*
Commenting ldes rules until ready to go to qa/prod. In the meantime, we override the configuration on dev.

View File

@@ -0,0 +1,8 @@
{
"creators": [
"http://lblod.data.gift/services/delta-producer-background-jobs-initiator/organizations",
"http://lblod.data.gift/services/delta-producer-background-jobs-initiator/public",
"http://lblod.data.gift/services/delta-producer-background-jobs-initiator/organizations-public-info",
"http://lblod.data.gift/services/delta-producer-background-jobs-initiator/worship-posts"
]
}

View File

@@ -0,0 +1,44 @@
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/system/email> {
<http://data.lblod.info/id/mailboxes/1> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nmo#Mailbox>;
<http://mu.semte.ch/vocabularies/core/uuid> "cf9cb7e4-9a00-4855-9ee0-e8e3bbeba9e9";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#hasPart> <http://data.lblod.info/id/mail-folders/1>;
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#hasPart> <http://data.lblod.info/id/mail-folders/2>;
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#hasPart> <http://data.lblod.info/id/mail-folders/3>;
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#hasPart> <http://data.lblod.info/id/mail-folders/4>;
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#hasPart> <http://data.lblod.info/id/mail-folders/5>;
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#hasPart> <http://data.lblod.info/id/mail-folders/6>.
<http://data.lblod.info/id/mail-folders/1> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Folder>;
<http://mu.semte.ch/vocabularies/core/uuid> "891c67e5-4719-47f8-aec2-d898ba2c09e8";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title> "inbox";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#description> "Your incoming mail goes here.".
<http://data.lblod.info/id/mail-folders/2> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Folder>;
<http://mu.semte.ch/vocabularies/core/uuid> "786a8cb0-4452-40f5-b8d8-046dd2d63281";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title> "outbox";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#description> "Your outgoing mail goes here.".
<http://data.lblod.info/id/mail-folders/3> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Folder>;
<http://mu.semte.ch/vocabularies/core/uuid> "a6fb03f9-11be-4401-9d8f-b4dc0e9df5ee";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title> "sentbox";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#description> "Your sent mail goes here.".
<http://data.lblod.info/id/mail-folders/4> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Folder>;
<http://mu.semte.ch/vocabularies/core/uuid> "a430a848-e595-49fa-bc11-f5579605877f";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title> "sending";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#description> "Your mail goes here while being sent.".
<http://data.lblod.info/id/mail-folders/5> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Folder>;
<http://mu.semte.ch/vocabularies/core/uuid> "0cb108a9-1c0d-4c0a-bf53-60e304116e47";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title> "drafts";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#description> "Your draft goes here.".
<http://data.lblod.info/id/mail-folders/6> a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Folder>;
<http://mu.semte.ch/vocabularies/core/uuid> "70c0baba-17a0-11eb-adc1-0242ac120002";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title> "failbox";
<http://www.semanticdesktop.org/ontologies/2007/01/19/nie#description> "Your email that failed while sending goes here.".
}
}

View File

@@ -95,6 +95,17 @@ services:
BASE_URL: "http://localhost/ldes/"
kbo-data-sync:
restart: "no"
error-alert:
environment:
EMAIL_FROM: 'test@domain.net'
EMAIL_TO: '123@domain.com'
restart: "no"
deliver-email-service:
environment:
EMAIL_CRON_PATTERN: "*/5 * * * *"
WELL_KNOWN_SERVICE: "test"
FROM_NAME: "Your Name"
restart: "no"
# use this to test acmidm
# tlsproxy:
# image: caddy:2

View File

@@ -626,6 +626,28 @@ services:
restart: always
logging: *default-logging
error-alert:
image: lblod/loket-error-alert-service:1.0.0
volumes:
- ./config/error-alert:/config/
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
deliver-email-service:
image: redpencil/deliver-email-service:1.0.0
environment:
MAILBOX_URI: "http://data.lblod.info/id/mailboxes/1"
links:
- db:database
labels:
- "logging=true"
restart: always
logging: *default-logging
roles:
image: lblod/select-role-service:0.1.0
labels: