Refactor point value object and add observability

This commit is contained in:
Bernard Ngandu
2025-10-10 14:55:36 +02:00
parent 8a43d3967c
commit 68eb54995f
46 changed files with 3691 additions and 229 deletions
+6
View File
@@ -24,6 +24,12 @@ doctrine:
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
alias: App
AppValueObject:
type: attribute
is_bundle: false
dir: '%kernel.project_dir%/src/ValueObject'
prefix: 'App\ValueObject'
alias: AppValueObject
controller_resolver:
auto_mapping: false
+8
View File
@@ -0,0 +1,8 @@
mercure:
hubs:
default:
url: '%env(MERCURE_URL)%'
public_url: '%env(MERCURE_PUBLIC_URL)%'
jwt:
secret: '%env(MERCURE_JWT_SECRET)%'
publish: '*'
+18
View File
@@ -0,0 +1,18 @@
framework:
messenger:
# Uncomment this (and the failed transport below) to send failed messages to this transport for later handling.
# failure_transport: failed
transports:
sync: 'sync://'
routing:
App\Message\SignalCreatedMessage: sync
# when@test:
# framework:
# messenger:
# transports:
# # replace with your transport name here (e.g., my_transport: 'in-memory://')
# # For more Messenger testing tools, see https://github.com/zenstruck/messenger-test
# async: 'in-memory://'
+79
View File
@@ -0,0 +1,79 @@
monolog:
channels:
- deprecation # Deprecations are logged in the dedicated "deprecation" channel when it exists
- signals
when@dev:
monolog:
handlers:
main:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
channels: ["!event"]
signals:
type: stream
path: "%kernel.logs_dir%/signals_%kernel.environment%.log"
level: debug
channels: [signals]
# uncomment to get logging in your browser
# you may have to allow bigger header sizes in your Web server configuration
#firephp:
# type: firephp
# level: info
#chromephp:
# type: chromephp
# level: info
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine", "!console"]
when@test:
monolog:
handlers:
main:
type: fingers_crossed
action_level: error
handler: nested
excluded_http_codes: [404, 405]
channels: ["!event"]
nested:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
signals:
type: stream
path: "%kernel.logs_dir%/signals_%kernel.environment%.log"
level: debug
channels: [signals]
when@prod:
monolog:
handlers:
main:
type: stream
path: php://stderr
level: info
formatter: monolog.formatter.json
channels: ["!event"]
signals:
type: stream
path: php://stderr
level: info
formatter: monolog.formatter.json
channels: [signals]
sentry:
type: sentry
level: error
hub_id: sentry
channels: ["!event", "!doctrine", "!console"]
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine"]
deprecation:
type: stream
channels: [deprecation]
path: php://stderr
formatter: monolog.formatter.json
+6
View File
@@ -0,0 +1,6 @@
sentry:
dsn: '%env(SENTRY_DSN)%'
register_error_listener: true
options:
environment: '%kernel.environment%'
traces_sample_rate: 0.0
+8
View File
@@ -0,0 +1,8 @@
framework:
rate_limiter:
signal_submission:
policy: 'token_bucket'
limit: 5
rate:
interval: '1 minute'
amount: 1
+11
View File
@@ -0,0 +1,11 @@
framework:
validation:
# Enables validator auto-mapping support.
# For instance, basic validation constraints will be inferred from Doctrine's metadata.
#auto_mapping:
# App\Entity\: []
when@test:
framework:
validation:
not_compromised_password: false