Commit graph

159 commits

Author SHA1 Message Date
Nawaz Dhandala
1a2acbf12d
feat(ai-agent): Implement AI Agent service with configuration, registration, and health check functionality 2025-12-24 15:24:47 +00:00
Nawaz Dhandala
f92a109f3d
feat: Add MCP service configuration with volumes and debugging port 2025-12-16 11:24:29 +00:00
Nawaz Dhandala
eea9c2788b
Refactor: Remove Copilot tools and related utilities
Some checks are pending
Push Test Images to Docker Hub and GitHub Container Registry / telemetry-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / probe-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / dashboard-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / admin-dashboard-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / home-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / status-page-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / test-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / probe-ingest-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / server-monitor-ingest-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / incoming-request-ingest-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / app-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / api-reference-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / accounts-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / worker-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / workflow-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / docs-docker-image-deploy (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / publish-terraform-provider (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / test-helm-chart (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / test-e2e-test-saas (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / test-e2e-test-self-hosted (push) Blocked by required conditions
Push Test Images to Docker Hub and GitHub Container Registry / infrastructure-agent-deploy (push) Blocked by required conditions
Common Test / test (push) Waiting to run
Incoming Request Ingest Test / test (push) Waiting to run
Tests / test-app (push) Waiting to run
Tests / test-worker (push) Waiting to run
MCP Server Test / test (push) Waiting to run
ProbeIngest Test / test (push) Waiting to run
Probe Test / test (push) Waiting to run
Telemetry Test / test (push) Waiting to run
Tests / test-home (push) Waiting to run
- Deleted RunCommandTool, SearchWorkspaceTool, WriteFileTool, and their associated interfaces and implementations.
- Removed Tool, ToolRegistry, and AgentLogger classes, along with their dependencies.
- Eliminated utility functions for workspace path management and secret sanitization.
- Cleaned up TypeScript configuration and example environment variables related to Copilot.
- Updated Docker Compose files to remove references to Copilot services.
2025-12-10 11:42:31 +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
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
5c4b19ab3d
feat: Update nodemon configurations to improve performance and debugging options 2025-08-27 13:41:05 +01:00
Simon Larsen
64c0c8b4cb
haraka delete 2025-07-25 09:07:09 +01:00
Simon Larsen
b1383029f3
fix: remove unnecessary comments from port mappings in docker-compose.dev.yml 2025-06-09 20:04:57 +01:00
Simon Larsen
fe64380384
feat: add server monitor ingest service with Docker and configuration updates 2025-02-21 20:23:27 +00:00
Simon Larsen
943acc8567
feat: add Clickhouse configuration volume and update AnalyticsDatabaseService to use ResultSet for JSON responses 2025-01-30 11:58:43 +00:00
Simon Larsen
5494a2244e
feat: update Dockerfile.tpl to use new OpenTelemetry Collector version and improve gomplate installation 2025-01-22 12:44:22 +00:00
Simon Larsen
06e7228041
Add HTTP input to Fluent Bit configuration and expose port 8889 for telemetry ingestion 2024-12-05 14:43:39 +00:00
Simon Larsen
38ad431b17
Update Fluent Bit Docker configuration and remove obsolete YAML file 2024-12-04 20:09:16 +00:00
Simon Larsen
e0f5d8f1f2
Add Fluent Bit configuration and update probe intervals in Helm chart 2024-12-04 19:23:59 +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
945cef653c
Add Incoming Request Ingest service with configuration, Docker support, and tests 2024-11-21 14:41:37 +00:00
Simon Larsen
9244e49e6b
Add Fluent Ingest service with configuration, Docker support, and tests 2024-11-21 13:31:11 +00:00
Simon Larsen
3865f6cb06
Refactor Markdown class to convert tags > and < to &gt; and &lt; 2024-10-28 11:44:26 +00:00
Simon Larsen
26e3bb2074
Add documentation files and update configuration for Docs service 2024-09-18 16:38:53 +01:00
Simon Larsen
68389cda85
Add API reference code examples and configuration files 2024-09-18 14:39:11 +01:00
Simon Larsen
6aa9895e72
refactor workflow 2024-09-16 15:22:15 -07:00
Simon Larsen
86168a50ee
Add Worker service configuration, deployment setup, and Nginx routing 2024-09-16 08:42:50 -07:00
Simon Larsen
f728a94a80
Add Home service configuration and deployment setup 2024-09-16 08:11:21 -07:00
Simon Larsen
eac7134630
refactor: Enable lazy loading for images in BlogPostUtil and remove unnecessary whitespace in Copilot/Init.ts 2024-09-05 13:49:41 +01:00
Simon Larsen
86e5a33bd9
refactor: Update import statements for CommonUI to use Common/UI 2024-08-07 16:14:31 -06:00
Simon Larsen
23318f093f
refactor: Update import statements for CommonUI to use Common/UI 2024-08-07 13:34:27 -06:00
Simon Larsen
0f0f2c1b81
feat: Update react-syntax-highlighter to latest version and use a11yDark style
This commit updates the react-syntax-highlighter package to the latest version and switches to the a11yDark style for syntax highlighting in the MarkdownViewer component. This update ensures compatibility with the latest features and improvements of react-syntax-highlighter and enhances the accessibility of the code snippets in the MarkdownViewer.
2024-07-14 15:40:10 -06:00
Simon Larsen
6b9e0c8b99
chore: Disable Copilot in development environment 2024-07-10 13:39:35 +01:00
Simon Larsen
3c2af1dc38
refactor: Remove unused Llama service from docker-compose.dev.yml 2024-06-18 21:47:40 +01:00
Simon Larsen
3f315be279
refactor: Update Llama app to use local model path instead of model ID
This commit updates the Llama app to use a local model path instead of a model ID. The model path is set to "/app/Models/Meta-Llama-3-8B-Instruct". This change improves the reliability and performance of the app by directly referencing the model file instead of relying on an external model ID.
2024-06-18 21:41:29 +01:00
Simon Larsen
26bb6f1e74
refactor: Update Dockerfile.tpl to expose port 8547 instead of port 80
This commit modifies the Dockerfile.tpl file to update the EXPOSE directive. The port number is changed from 80 to 8547 to align with the port used by the Llama application. This change ensures that the Llama application is accessible from outside the container on the correct port.
2024-06-18 18:42:11 +01:00
Simon Larsen
4e748d1626
Refactor and delete unused Metric services and models 2024-05-03 13:03:01 +01:00
Simon Larsen
c6643d7f7c
Update GreenlockUtil class to handle lets encrypt account key properly 2024-05-01 12:37:41 +01:00
Simon Larsen
fe40c5bb8d
Add test results artifact upload to E2E workflow 2024-04-26 22:04:12 +01:00
Simon Larsen
5d9a11fb48
Refactor E2E tests and Docker configuration 2024-04-25 12:58:39 +01:00
Simon Larsen
78e9ad439c
Add IsolatedVMHostname to EnvironmentConfig.ts and docker-compose files 2024-04-05 20:02:33 +01:00
Simon Larsen
90ceb9cfc6
Remove infrastructure-agent service from docker-compose.dev.yml 2024-04-02 10:10:44 +01:00
Simon Larsen
038684e512
Fix probeId conversion to string in ProbeMonitorResponseService 2024-04-01 12:23:29 +01:00
Simon Larsen
92e3164071
Add logging statements and update environment variables in InfrastructureAgent 2024-03-12 11:30:19 +00:00
Simon Larsen
6c08d12f4c
Fix file path typo in Dockerfile and add secret key for development 2024-03-12 10:17:13 +00:00
Simon Larsen
5f735a316f
Add Fluent Ingest API endpoint 2024-02-02 12:21:29 +00:00
Simon Larsen
c7f51cdade
Fix async initialization of Workers and remove unused workflow service 2024-01-11 19:10:00 +05:30
Simon Larsen
7bf8b1b189
Add volume for certs in app.yaml and remove workers.yaml 2024-01-11 16:30:44 +05:30
Simon Larsen
7366e92d42
Update Dockerfile paths for App 2023-12-28 19:30:58 +00:00
Simon Larsen
2e8ee1d51b
Remove unused launch configurations and update port values 2023-12-28 16:49:47 +00:00
Simon Larsen
d11a5e1d1e
Update package name and hostnames 2023-12-28 15:54:27 +00:00
Simon Larsen
224824f1f1
Remove notification service and related configurations 2023-12-25 13:09:41 +00:00
Simon Larsen
4359b74f26
Remove unused files and configurations 2023-12-25 12:42:20 +00:00
Simon Larsen
5dfe813bc2
Refactor docker-compose files to remove unused services 2023-12-25 12:28:15 +00:00