Commit Graph

33816 Commits

Author SHA1 Message Date
Nawaz Dhandala
04cb7da6d6 chore(fluentd): update production endpoint and x-oneuptime token in Fluentd config (Fluentd/fluent.conf) 2025-11-07 20:38:23 +00:00
Nawaz Dhandala
c6e2f41351 chore(docker-compose): add fluentd service to docker-compose.base.yml 2025-11-07 20:27:50 +00:00
Simon Larsen
e524dfda6d chore(fluent-ingest): normalize formatting in FluentLogsIngestService and Index.ts 2025-11-07 20:22:51 +00:00
Simon Larsen
30b6353714 chore(fluent-ingest): route fluent log ingest through TelemetryQueueService, add FluentLogsIngestService and remove legacy ProcessFluentLogs job 2025-11-07 20:20:25 +00:00
Simon Larsen
29be9b399f chore(fluent-ingest): route fluent log ingest through TelemetryQueueService and remove legacy queue endpoints
- Replace FluentLogsQueueService import/use with TelemetryQueueService.addFluentLogIngestJob in Fluent API.
- Remove ClusterKeyAuthorization-protected queue admin endpoints (stats, size, failed) from Fluent API.
- Remove ProcessFluentLogs job import from service initialization.
2025-11-07 20:02:22 +00:00
Simon Larsen
36cdeec916 chore(queue): remove FluentLogs from QueueName enum 2025-11-07 19:46:29 +00:00
Simon Larsen
a80b7ba88c chore(fluent-ingest): migrate fluent log ingest into open-telemetry-ingest and remove legacy fluent-ingest service
- Move Fluent/Fluent Bit logs ingestion into open-telemetry-ingest:
  - Add OpenTelemetryIngest/API/Fluent.ts (routes for /fluentd and queue endpoints)
  - Add Queue service, job worker and processor:
    - OpenTelemetryIngest/Services/Queue/FluentLogsQueueService.ts
    - OpenTelemetryIngest/Jobs/TelemetryIngest/ProcessFluentLogs.ts
  - Register Fluent API and job processing in OpenTelemetryIngest/Index.ts
  - Introduce QueueName.FluentLogs and related queue usage

- Remove legacy FluentIngest service and configuration:
  - Delete fluent-ingest docker-compose/dev/base entries and docker-compose.yml service
  - Remove fluent-ingest related helm values, KEDA scaledobject, ingress host and schema entries
  - Remove FLUENTD_HOST env/values and replace FLUENT_INGEST_HOSTNAME -> FLUENT_LOGS_HOSTNAME (pointing to open-telemetry-ingest)
  - Update config.example.env keys (FLUENT_LOGS_CONCURRENCY, DISABLE_TELEMETRY_FOR_FLUENT_LOGS)
  - Remove FluentIngestRoute and FLUENT_INGEST_URL/hostname usages from UI config/templates
  - Remove VSCode launch debug config for Fluent Ingest
  - Remove Fluent ingest E2E status check entry in Tests/Scripts/status-check.sh
  - Update docs/architecture diagram and Helm templates to reflect "FluentLogs" / Fluent Bit flow

- Misc:
  - Remove FLUENTD_HOST environment injection from docker-compose.base.yml
  - Cleanup related values.schema.json and values.yaml entries

This consolidates log ingestion under the OpenTelemetry ingest service and removes the separate FluentIngest service and its configuration.
2025-11-07 19:37:31 +00:00
Simon Larsen
b31d1076b8 chore(fluent-ingest): remove /fluent-ingest nginx proxy location from default.conf.template 2025-11-07 19:04:46 +00:00
Simon Larsen
788e82497c chore(fluent-ingest): remove fluent-ingest upstream and Fluentd collector nginx config; route fluentd/syslog endpoints to open-telemetry-ingest 2025-11-07 19:04:32 +00:00
Simon Larsen
3409b0f66e chore(fluent-ingest): remove FluentIngest E2E status check tests 2025-11-07 18:57:06 +00:00
Simon Larsen
cafed35795 chore(fluent-ingest): remove FluentIngest service and all related sources, configs and artifacts 2025-11-07 18:49:09 +00:00
Simon Larsen
69ae1eb310 chore(ci/infra): remove FluentIngest from workflows, charts and compose; bump OpenTelemetryIngest deps
- Remove FluentIngest CI jobs and release/test deploy steps (build.yml, compile.yml, release.yml, test-release.yaml)
- Delete test.fluent-ingest workflow
- Remove Fluent-related env vars/hostnames from config.example.env, docker-compose.base.yml, HelmChart templates and EnvironmentConfig.ts
- Remove fluent-ingest service block from docker-compose.base.yml
- Bump Playwright and TypeORM versions in OpenTelemetryIngest package-lock.json
2025-11-07 18:46:27 +00:00
Simon Larsen
863f1ae82e Merge pull request #2087 from OneUptime/snyk-fix-c8a12071f54add6476bd98c6671cd43d
[Snyk] Security upgrade typeorm from 0.3.20 to 0.3.26
8.0.5567
2025-11-07 13:30:31 +00:00
snyk-bot
0755c15886 fix: Common/package.json & Common/package-lock.json to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-TYPEORM-13746469
2025-11-07 13:25:43 +00:00
Nawaz Dhandala
72ed43563e Merge branch 'master' of https://github.com/OneUptime/oneuptime 2025-11-07 13:24:21 +00:00
Nawaz Dhandala
15ded6cd46 Merge remote-tracking branch 'origin/snyk-upgrade-4b64a1ce29eed910e23d56c358729865' 2025-11-07 13:24:15 +00:00
Simon Larsen
9e238dc660 Merge pull request #2085 from OneUptime/chore/npm-audit-fix
chore: npm audit fix
2025-11-07 13:23:08 +00:00
Nawaz Dhandala
9f3ccc7d74 style(exec): type-annotate spawned child as ChildProcess and format spawn call 2025-11-07 13:22:24 +00:00
simlarsen
9e5db22235 chore: npm audit fix 2025-11-07 01:46:40 +00:00
Nawaz Dhandala
e31417c5bf style(exec, nginx, docs): tidy formatting and indentation across Execute.ts, NginxConfigurator.ts, and Telemetry Documentation 2025-11-06 19:41:57 +00:00
Nawaz Dhandala
bf6e97c35d feat(exec): add executeCommandInheritStdio and use it for nginx config test
- Add spawn and SpawnOptions imports and implement Execute.executeCommandInheritStdio
  that runs commands with inherited stdio, logs errors, and rejects on non-zero exit.
- Update NginxConfigurator to run `nginx -t -c /etc/nginx/nginx.conf` via the new
  inherit-stdio helper before reloading nginx.
2025-11-06 19:41:01 +00:00
Nawaz Dhandala
28073ba819 nginx(config): ensure log directory and access/error log files exist before reload 2025-11-06 14:20:13 +00:00
Nawaz Dhandala
4909a5c980 ci(workflows): disable Docker build cache in GitHub Actions
Add --no-cache to docker build and docker buildx commands across build.yml, release.yml and test-release.yaml to force fresh image builds and avoid using cached layers.
2025-11-06 13:54:58 +00:00
Nawaz Dhandala
c4adc24562 ci(release): handle npm publish --dry-run errors and skip if version already published 2025-11-06 13:33:14 +00:00
Nawaz Dhandala
597344483a docs(telemetry): expand common use cases into detailed sections with rsyslog and Fluent Bit examples 2025-11-06 13:21:01 +00:00
Simon Larsen
05d9b79ba2 docs(opentelemetry-ingest): add Syslog testing instructions with RFC5424 curl example 2025-11-06 12:51:56 +00:00
Simon Larsen
af14edb175 docs(telemetry): add "Send Native Syslog" tile to Documentation component 2025-11-06 12:49:36 +00:00
Simon Larsen
0255bd37d0 docs(telemetry): add "Common Use Cases" section to Syslog guide 2025-11-06 12:47:30 +00:00
Simon Larsen
2e6b463bd7 Merge branch 'master' of github.com:OneUptime/oneuptime 2025-11-06 12:41:33 +00:00
Simon Larsen
95e355ff7d style(opentelemetry-ingest): add RequestHandler/type annotations and simplify parser regexes
- Type setSyslogProductType as RequestHandler
- Import and use ParsedSyslogMessage in parser tests (explicit typed parsed variables)
- Simplify regex usage/formatting in SyslogParser for version and procId matching
- Minor import formatting cleanup
2025-11-06 12:41:29 +00:00
Simon Larsen
cccdcdaf93 style(opentelemetry-ingest): normalize formatting and line-wrapping across ingest code
- Remove extraneous blank line in OTelIngest router
- Reflow imports, function signatures and wrapped expressions in:
  OtelIngestBaseService, SyslogQueueService, SyslogIngestService
- Tidy regex/whitespace and token handling formatting in SyslogParser
- Simplify quoting and compact multiline expectations in SyslogParser tests
- Pure stylistic changes only — no behavioral modifications
2025-11-06 12:34:38 +00:00
Simon Larsen
9256f8b4bd feat(opentelemetry-ingest): add Syslog ingestion API and RFC3164/5424 parsing
- Add new Syslog API (POST /syslog/v1/logs) with product-type middleware and mount it in OpenTelemetryIngest Index
- Move syslog route out of OTelIngest and clean up related imports
- Add parseRfc5424Timestamp and parseRfc3164Timestamp to OneUptimeDate (handles normalization and year rollovers)
- Refactor SyslogParser to use OneUptimeDate parsing helpers and remove duplicated timestamp parsing code
- Update NGINX template to proxy /syslog/v1/logs to open-telemetry-ingest with proper headers/resolver and connection settings
2025-11-06 12:33:36 +00:00
Simon Larsen
b27acbfd38 feat(opentelemetry-ingest): add native Syslog ingestion, parsing, queuing, docs & tests
- Add /syslog/v1/logs endpoint and syslog product-type middleware
- Implement SyslogIngestService: normalize/parse messages, build attributes, batch flush to LogService
- Add robust Syslog parser (RFC5424 & RFC3164) and comprehensive unit tests
- Add TelemetryType.Syslog, SyslogQueueService, and queue handling (enqueue + worker processing)
- Expose OPEN_TELEMETRY_INGEST_SYSLOG_FLUSH_BATCH_SIZE config
- Update Otel ingest router, base service helpers, and ProcessTelemetry worker to support Syslog
- Add documentation page and navigation entry for Syslog telemetry
2025-11-06 12:22:48 +00:00
Nawaz Dhandala
ad9771f222 Merge branch 'release' 2025-11-06 11:55:36 +00:00
Nawaz Dhandala
20a3eab3a0 fix(email): validate using RFC5322 regex and remove redundant Zod check 2025-11-06 11:55:14 +00:00
Nawaz Dhandala
fbe198f0c0 fix(nginx): ensure /var/log/nginx and logs exist; set error_log to /var/log/nginx/error.log
Create /var/log/nginx and touch access.log/error.log in run.sh so nginx -t succeeds before reloads.
Revert nginx.conf error_log to /var/log/nginx/error.log (notice).
2025-11-06 11:34:19 +00:00
Nawaz Dhandala
bb48776e02 fix(nginx): use stderr for error_log to enable container-friendly logging 2025-11-05 21:38:59 +00:00
Nawaz Dhandala
0f92342742 fix(nginx): write error_log to /proc/self/fd/2 for container-friendly logging 2025-11-05 20:33:32 +00:00
Nawaz Dhandala
6ed41b87dd fix(nginx): send error_log to /dev/stderr for container-friendly logging 2025-11-05 19:52:06 +00:00
Nawaz Dhandala
12364415aa ci(release): skip npm publish if version already published; fail on other errors 2025-11-05 19:37:45 +00:00
Nawaz Dhandala
1a3301e715 fix(monitor): normalize disk paths when matching disk metrics (handle backslashes, trailing slashes and root path) 2025-11-05 17:47:33 +00:00
Nawaz Dhandala
8be7b68faf fix(helm): move nodeSelector into e2e CronJob pod template and add per-job override 2025-11-05 16:58:07 +00:00
Nawaz Dhandala
47f9d3914e fix(queue): normalize job IDs (replace ':' with '-') when adding/removing jobs and handling repeatable keys 2025-11-05 15:14:51 +00:00
Nawaz Dhandala
8a1afbe7dc Merge branch 'master' of https://github.com/OneUptime/oneuptime 2025-11-05 13:32:12 +00:00
Simon Larsen
87ac6f3106 Merge branch 'master' of github.com:OneUptime/oneuptime 2025-11-05 13:23:25 +00:00
Simon Larsen
2df32e4cdd fix(monitor): return null for cached monitor status name instead of undefined 2025-11-05 13:23:23 +00:00
Nawaz Dhandala
2e2adffe17 fix(nginx): use findAllBy and remove LIMIT_MAX when fetching certs for disk write jobs 2025-11-05 13:11:58 +00:00
Nawaz Dhandala
2a15cf8676 fix(acme): adjust ACME challenge route to /acme-challenge/.well-known/:token 2025-11-05 13:02:02 +00:00
Nawaz Dhandala
d249579c1c fix(acme): mount .well-known/acme-challenge router on main router to expose ACME challenge endpoint 2025-11-05 12:52:42 +00:00
Nawaz Dhandala
05681b108b style(monitor): add explicit type annotations and minor formatting cleanup in EvaluationLogList 2025-11-05 12:38:50 +00:00