55 Commits

Author SHA1 Message Date
Nawaz Dhandala
23f5ffc840 fix: add waitUntil option for navigation in CreateMonitor and CreateProject tests 2026-04-05 20:00:03 +01:00
Nawaz Dhandala
37e4f28e57 fix: update project dashboard URL regex to include optional home path 2026-04-03 16:33:55 +01:00
Nawaz Dhandala
191569eb3d fix: add Locator type for modal submit button and plan option in project and monitor creation tests 2026-04-03 14:33:17 +01:00
Nawaz Dhandala
2770f9a515 fix: standardize project dashboard URL regex and improve modal button handling in project and monitor creation tests 2026-04-03 14:30:22 +01:00
Nawaz Dhandala
26bcc69fa2 Enhance Traces Dashboard with latency percentiles and service health metrics
- Added global P50, P95, and P99 latency calculations to the TracesDashboard component.
- Introduced a new formatDuration function to format latency values for display.
- Updated service summaries to include per-service P50 and P95 latencies.
- Improved the layout of the dashboard to display overall requests, error rates, and latency metrics.
- Refactored service health indicators to visually represent error rates with color coding.
- Adjusted the display of recent errors and slow requests for better user experience.
- Updated E2E tests for admin and public dashboards to include response type checks.
2026-04-03 11:34:06 +01:00
Nawaz Dhandala
92a48f1e17 feat: add status check tests for Admin and Public dashboards, remove obsolete Telemetry status checks 2026-04-03 09:37:35 +01:00
Nawaz Dhandala
4e2ca87752 refactor: improve readability of messages and code formatting in various components 2026-04-02 14:33:46 +01:00
Nawaz Dhandala
4e33cd7c1b fix: ensure page stability after project creation by waiting for network to be idle 2026-04-02 09:02:44 +01:00
Nawaz Dhandala
7add10642f feat: add E2E tests for monitor and project creation workflows
chore: update ClickHouse config to disable no_password authentication
2026-03-31 11:20:58 +01:00
Nawaz Dhandala
f3a06257c0 refactor: remove obsolete status check tests for ProbeIngest and IncomingRequestIngest 2026-03-05 11:17:18 +00:00
Nawaz Dhandala
a549daf9ab refactor: improve code readability by updating comments and formatting in migration and services 2026-01-27 12:45:28 +00:00
Nawaz Dhandala
88897004a2 refactor: rename fetchSitemap to fetchSitemapXml and update tests for sitemap structure 2026-01-27 12:20:41 +00:00
Nawaz Dhandala
7ff0da5ab5 fix: Update navigation for Enterprise dropdown and adjust Request Demo link 2026-01-06 11:19:07 +00:00
Nawaz Dhandala
d09228a71d fix(tests): Update navigation link types to use Locator for better type safety
chore: Bump version to 9.2.27
2025-12-23 21:58:44 +00:00
Nawaz Dhandala
e5c48061e4 refactor(tests): Simplify navigation link interactions in pricing and enterprise tests 2025-12-23 21:52:43 +00:00
Nawaz Dhandala
f8802eea24 fix: format code for better readability in Landing.spec.ts 2025-12-05 11:10:15 +00:00
Nawaz Dhandala
5b45cab822 fix: update link selector for OneUptime in Landing.spec.ts 2025-12-05 11:03:33 +00:00
Simon Larsen
888d8d6fbf refactor: clean up code formatting and improve readability across multiple files 2025-11-10 14:36:44 +00:00
Nawaz Dhandala
f49b1995df feat(telemetry): add new Telemetry service (OTel, Syslog, Fluent, Metrics, Traces) and unified ingestion pipeline
- Add Telemetry service entrypoint
  - Telemetry/Index.ts: app bootstrap, routes mounting, infrastructure init and Telemetry SDK init.

- Unified queue + worker
  - Telemetry/Jobs/TelemetryIngest/ProcessTelemetry.ts: single worker that dispatches queued jobs to specific processors (logs, traces, metrics, syslog, fluent logs).
  - Telemetry/Services/Queue/TelemetryQueueService.ts: central queue API and job payload types.
  - Per-type Queue wrappers (LogsQueueService, MetricsQueueService, TracesQueueService, FluentLogsQueueService, SyslogQueueService).

- OpenTelemetry ingestion middleware and proto support
  - Telemetry/Middleware/OtelRequestMiddleware.ts: detect OTLP endpoint (logs/traces/metrics), decode protobuf bodies using protobufjs and set product type.
  - Telemetry/ProtoFiles/OTel/v1/*.proto: include common.proto, logs.proto, metrics.proto, resource.proto, traces.proto for OTLP v1 messages.

- Ingest services
  - Telemetry/Services/OtelLogsIngestService.ts: parse incoming OTLP logs, map attributes, convert timestamps, batch insert logs.
  - Telemetry/Services/OtelTracesIngestService.ts: parse OTLP traces, build span rows, extract exceptions, batch insert spans and exceptions, save telemetry exception summary.
  - Telemetry/Services/OtelMetricsIngestService.ts: parse OTLP metrics, normalize datapoints, batch insert metrics and index metric name -> service map.
  - Telemetry/Services/SyslogIngestService.ts: syslog ingestion endpoints, parser integration, map syslog fields to attributes and logs.
  - Telemetry/Services/FluentLogsIngestService.ts: ingest Fluentd style logs, normalize entries and insert into log backend.
  - Telemetry/Services/OtelIngestBaseService.ts: helpers to resolve service name from attributes/headers.

- Syslog parser and utilities
  - Telemetry/Utils/SyslogParser.ts: robust RFC5424 and RFC3164 parser, structured data extraction and sanitization.
  - Telemetry/Tests/Utils/SyslogParser.test.ts: unit tests for parser behavior.

- Telemetry exception utilities
  - Telemetry/Utils/Exception.ts: generate exception fingerprint and upsert telemetry exception status (saveOrUpdateTelemetryException).

- Queue & job integration
  - New integration with Common/Server/Infrastructure/Queue and QueueWorker, job id generation and telemetry job types.
  - Telemetry services add ingestion jobs instead of processing synchronously.

- Config, build and dev tooling
  - Add Telemetry/package.json, package-lock.json, tsconfig.json, nodemon.json, jest config.
  - New script configs and dependencies (protobufjs, ts-node, jest, nodemon, etc).

- Docker / environment updates
  - docker-compose.base.yml, docker-compose.dev.yml, docker-compose.yml: rename service from open-telemetry-ingest -> telemetry and wire TELEMETRY_* envs.
  - config.example.env: rename and consolidate environment variables (OPEN_TELEMETRY_* -> TELEMETRY_*, update hostnames and ports).
  - Tests/Scripts/status-check.sh: update ready-check target to telemetry/status/ready.

- Other
  - Telemetry/Services/Queue/*: export helpers and legacy-compatible job interface shims.
  - Memory cleanup and batching safeguards across ingest services.
  - Logging and capture spans added to key code paths.

BREAKING CHANGES / MIGRATION NOTES:
- Environment variables and docker service names changed:
  - Replace OPEN_TELEMETRY_... vars with TELEMETRY_... (PORT, HOSTNAME, CONCURRENCY, DISABLE_TELEMETRY, etc).
  - docker-compose entries moved from "open-telemetry-ingest" to "telemetry" and image name changed to oneuptime/telemetry.
  - Update any deployment automation and monitoring checks referencing the old service name or endpoints.
- Consumers: OTLP endpoints and behavior remain supported, but ingestion is now queued and processed asynchronously.

Testing / Running:
- Install deps in Telemetry/ (npm install) after syncing Common workspace.
- Run dev: npx nodemon (nodemon.json) or build & start using provided scripts.
- Run tests with jest (Telemetry test suite includes SyslogParser unit tests).

Files added/modified (high level):
- Added many files under Telemetry/: Index, Jobs, Middleware, ProtoFiles, Services, Utils, Tests, package and config artifacts.
- Modified docker-compose.* and config.example.env and status check script to use new TELEMETRY service/vars.
2025-11-07 21:36:47 +00:00
Simon Larsen
3409b0f66e chore(fluent-ingest): remove FluentIngest E2E status check tests 2025-11-07 18:57:06 +00:00
Nawaz Dhandala
e357100e46 refactor: Remove redundant dynamic section checks from sitemap tests 2025-08-19 20:43:08 +01:00
Simon Larsen
7f3a50076d feat: Add reference section check to sitemap tests for improved coverage 2025-08-19 14:25:37 +01:00
Nawaz Dhandala
9f4869b05f test: Enhance sitemap tests to validate presence of dynamic sections 2025-08-19 10:07:11 +01:00
Nawaz Dhandala
17bdfee012 refactor: Simplify regex usage in sitemap tests and improve middleware formatting 2025-08-19 10:05:59 +01:00
Nawaz Dhandala
39e8b1da6b refactor: Enhance type annotations and improve code readability in sitemap tests 2025-08-18 13:47:35 +01:00
Nawaz Dhandala
66c4badd94 refactor: Improve formatting of product pages check in sitemap tests 2025-08-18 13:41:01 +01:00
Simon Larsen
a245fabc34 feat: Add end-to-end tests for sitemap loading and validation 2025-08-18 13:39:19 +01:00
Simon Larsen
dd52a97dfa fix: improve error handling by replacing catch blocks with empty catch statements across multiple components 2025-06-11 13:08:28 +01:00
Simon Larsen
d091c93bfc Increase default navigation timeout for status checks and add new probe ingest tests 2024-11-25 14:00:53 +00:00
Simon Larsen
815ae7161d Rename Ingestor to ProbeIngest; update configurations, routes, and Docker support; add new request types and workflows 2024-11-21 17:18:22 +00:00
Simon Larsen
3a1f5c7120 Refactor OpenTelemetry Ingest Dockerfile and configuration; update environment variables and docker-compose for new service integration 2024-11-21 17:08:35 +00:00
Simon Larsen
eec51342de Add configuration files for OpenTelemetry Ingest, including .gitignore, .dockerignore, and nodemon.json; refactor code for consistency and clarity 2024-11-21 16:42:29 +00:00
Simon Larsen
945cef653c Add Incoming Request Ingest service with configuration, Docker support, and tests 2024-11-21 14:41:37 +00:00
Simon Larsen
af6f5af11d Update phone number placeholders in registration and subscription forms 2024-06-26 12:36:27 +01:00
Simon Larsen
6be976102c refactor: Remove commented out code and unused imports 2024-06-21 18:53:11 +01:00
Simon Larsen
2a8c45cea0 refactor: Improve page load performance with lazy loading for images 2024-06-21 18:04:09 +01:00
Simon Larsen
f9b097a112 refactor: Improve page load performance by lazy loading images
This commit updates the Register.spec.ts file to improve the page load performance by implementing lazy loading for images. It ensures that the dashboard page is up before signing up the user and reloads the page if it fails to load. These changes enhance the user experience by optimizing the loading time of the registration page.
2024-06-18 13:45:51 +01:00
Simon Larsen
6ed588d7aa refactor: Update import statements for jest in test files
This commit updates the import statements for jest in multiple test files. The previous import statements used "globals" as the module name, which is incorrect. The correct module name is "jest". This change ensures that the jest module is imported correctly, improving the accuracy and reliability of the test setup.
2024-06-14 18:54:53 +01:00
Simon Larsen
70a2a3993b refactor: Update symbol type to use lowercase 'symbol' in ColumnAccessControl files 2024-06-14 12:09:53 +01:00
Simon Larsen
57f41a908a refactor: Improve login test to handle missing user credentials 2024-06-13 21:11:54 +01:00
Simon Larsen
4fa9adfc7d refactor: Update login test to handle missing user credentials
The login test in Login.spec.ts has been updated to handle cases where the user credentials (email and password) are missing. Previously, the test would only check if the user is registered, but now it also checks if the registered user email and password are available. This change ensures that the test behaves correctly in all scenarios and improves the reliability of the login functionality.
2024-06-13 18:49:19 +01:00
Simon Larsen
faf0641503 refactor: Update package.json and Encryption.ts to use latest version of crypto-js 2024-05-29 15:25:09 +01:00
Simon Larsen
077ca1037b Add IS_BILLING_ENABLED flag to E2E tests 2024-04-27 17:16:23 +01:00
Simon Larsen
7cbbce4067 Add IS_BILLING_ENABLED flag to account registration form in E2E tests 2024-04-26 21:15:01 +01:00
Simon Larsen
a0ef85b8cd Refactor test files to use consistent formatting 2024-04-26 18:46:22 +01:00
Simon Larsen
818f8cc421 Update E2E workflow to use environment variables from config.env in test.e2e.yaml 2024-04-26 18:46:10 +01:00
Simon Larsen
f47b53c5b9 Fix formatting issues in code blocks 2024-04-25 22:03:12 +01:00
Simon Larsen
11d580a373 Add E2E test environment variables and update E2E tests 2024-04-25 21:53:51 +01:00
Simon Larsen
3bc2e639d9 Add Jest and Babel ESLint parser to devDependencies 2024-04-25 19:15:14 +01:00
Simon Larsen
5d9a11fb48 Refactor E2E tests and Docker configuration 2024-04-25 12:58:39 +01:00