https://opentelemetry.io/docs/specs/otel/configuration/sdk-environment-variables/
- Do not source
.env, because Nx will not override env that already exist. So, let Nx source itself - Delete broken symlinks in the current directory and its subdirectories
find . -type l ! -exec test -e {} \; -print -delete
- Note service
- Routing kafka message based on metadata workspace id if partitioning or listening
- Some handlers should rename the UserID to actor ID, and... so do the domain event?
- Some query handler inject domain repo for getting workspace id
- Document service
- Currently only hocuspocus guard the document, other like create/update/delete revision not check, bcs I'm lazy
If do, should create a guard outside of it
- Health check
- Currently only hocuspocus guard the document, other like create/update/delete revision not check, bcs I'm lazy
- Authorization service
- Health check
- Cannot deal with
domain.com:8080/api/v1base path - no env validation for document, search-worker
- Health check to other services (api service, meili, postgres...)
- Connection pool max connections, idle, timeout for database, meili
- gin should be protected with
SetTrustedProxies - Event is tracked by either otel or correlation id. But, currently use wotel + kafka tracer, and partially correlation id but not really connected.
- If deploy, but not using roles. Change to
https://github.com/agilezebra/jwt-middleware, and use istio
- yjs isn't typesafety, like getting Ymap, and set value. May try to see other libs, how do they do
- Those NestJS logging, we need to find a better way to wrap those controller log. NestJS Pino only http? not microservice. And guess that we should either using middleware or interceptor
- Mutating
update, add, deleteworkspace member doesn't send event to user client