- Integrated profiling initialization in Probe, Telemetry, TestServer, and Worker services.
- Added environment variables for enabling profiling in various services.
- Created Profiling utility to handle CPU profiling and send data to OTLP endpoint.
- Introduced new metric types for exceptions, spans, and dashboards.
- Developed utility classes for handling alert and incident metrics.
- Added new React components for displaying alert and incident metrics in the dashboard.
- Simplified useEffect dependencies in ProfileTimeline component.
- Streamlined option rendering in ProfileTypeSelector component.
- Reformatted TelemetryDocumentation component for better readability.
- Improved formatting and consistency in AuthenticationSettings and Branding pages.
- Removed unused imports in ProfileViewPage.
- Enhanced code readability in StatusPageDelete component.
- Consolidated RouteMap definitions for better clarity.
- Cleaned up API response handling in PublicDashboard and DashboardViewPage.
- Refactored ProfileSample and DashboardAPI for improved code structure.
- Updated migration scripts for better readability and consistency.
- Enhanced incident and profile aggregation services for better clarity.
- Cleaned up telemetry ingestion service for improved readability.
- Improved test cases for OtelProfilesIngestService for better clarity.
- Implemented ProfileMonitor in MonitorTelemetryMonitor.ts to handle profile monitoring.
- Created DiffFlamegraph component for visualizing profile differences.
- Added ProfileTimeline component to display profile data over time.
- Introduced ProfileTypeSelector for selecting profile types.
- Developed ServiceProfiles page to display profiles for a specific service.
- Added ProfileMonitorCriteria for evaluating profile monitoring criteria.
- Implemented PprofEncoder for encoding profile data into pprof-compatible format.
- Defined ProfileMonitorResponse interface for structured profile monitoring responses.
- Implemented ProfileTable component to visualize profiles with advanced filtering options.
- Integrated telemetry services and attributes loading for dynamic filtering.
- Added error handling and loading states for improved user experience.
feat: Create ProfileUtil for stack frame parsing and formatting
- Introduced ProfileUtil class with methods for frame type color coding and stack frame parsing.
- Added utility functions for formatting profile values based on units.
docs: Add documentation for telemetry profiles integration
- Created comprehensive guide on sending continuous profiling data to OneUptime.
- Included supported profile types, setup instructions, and instrumentation examples.
feat: Implement ProfileAggregationService for flamegraph and function list retrieval
- Developed ProfileAggregationService to aggregate profile samples and generate flamegraphs.
- Added functionality to retrieve top functions based on various metrics.
feat: Define MonitorStepProfileMonitor interface for profile monitoring
- Created MonitorStepProfileMonitor interface and utility for building queries based on monitoring parameters.
test: Add example OTLP profiles payload for testing
- Included example JSON payload for OTLP profiles to assist in testing and integration.
- Introduced `profiles_service.proto` to define the ProfilesService for exporting resource profiles.
- Implemented `OtelProfilesIngestService` to handle ingestion of profiles, including processing and flushing to the database.
- Created `ProfilesQueueService` to manage profile ingestion jobs.
- Added comprehensive tests for `OtelProfilesIngestService`, covering stack frame resolution, timestamp parsing, and row building for profiles and samples.
- Simplified arrow function syntax in MasterPassword.tsx and DashboardAPI.ts
- Consolidated logger.debug statements in PublicDashboard.ts and DashboardDomainAPI.ts
- Reformatted multi-line statements for better clarity in various files
- Updated migration files for consistent naming conventions and formatting
- Enhanced code structure in DashboardDomainService.ts and MonitorTelemetryMonitor.ts
- Incremented version number to 10.0.40
- Introduced DashboardDomain model with comprehensive fields for managing custom domains for dashboards.
- Implemented DashboardDomainAPI for handling CNAME verification and SSL provisioning.
- Created DashboardDomainService to manage domain-related operations, including SSL ordering and CNAME validation.
- Added master password handling in DashboardAPI for enhanced security.
- Defined constants for master password messages and cookie management.
- Added support for notification rule conditions and filters in incident and alert summaries.
- Introduced utility functions for bold text and links in markdown formatting.
- Updated incident and alert value builders to include labels and descriptions.
- Enhanced summary blocks with improved formatting for total counts, severity, and state breakdowns.
- Refactored detailed incident and alert listings to use new formatting utilities.
- Improved overall readability and consistency of markdown output for notifications.
- Introduced a new column `sendFirstReportAt` to the `WorkspaceNotificationSummary` table.
- Updated default values for `rotation` and `restrictionTimes` columns in the `OnCallDutyPolicyScheduleLayer` table.
- Adjusted the logic in SendSummary.ts to calculate the next send time based on the recurring interval before updating the nextSendAt field.
- Implemented WorkspaceNotificationSummaryAPI to handle notification summary requests.
- Created WorkspaceNotificationSummaryService for business logic related to notification summaries.
- Added enums for WorkspaceNotificationSummaryItem and WorkspaceNotificationSummaryType to define summary items and types.
- Developed a cron job to send workspace notification summaries at regular intervals.
- Enhanced error handling and logging for summary sending process.
- Implemented a new migration for the KubernetesCluster and KubernetesClusterLabel tables in the database.
- Created a KubernetesClusterService for managing cluster instances, including methods for finding or creating clusters, updating their status, and marking disconnected clusters.
- Introduced a Helm chart for the OneUptime Kubernetes Monitoring Agent, including configuration files, deployment templates, and RBAC settings.
- Added support for collecting metrics and logs from Kubernetes clusters using OpenTelemetry.
- Configured service accounts, secrets, and resource limits for the agent's deployment and daemonset.
- Provided detailed notes and helper templates for the Helm chart to facilitate installation and configuration.
- Implemented LogPipelineProcessor model with necessary fields and access controls.
- Created LogDropFilterAction enum for defining actions on log drop filters.
- Introduced LogPipelineProcessorType enum and configuration interfaces for various processor types.
- Developed LogExport utility for exporting logs in CSV and JSON formats.
- Added LogDropFilterService for managing drop filters with caching.
- Implemented LogPipelineService for loading and processing log pipelines with processors.
- Created LogFilterEvaluator for evaluating filter queries against log entries.
- Introduced a new view mode "analytics" to the LogsViewer component.
- Created LogsAnalyticsView component to handle analytics display.
- Updated LogsViewerToolbar to allow switching between "list" and "analytics" views.
- Enhanced LogsViewer to manage internal state for view mode and handle changes.
- Updated types to include LogsViewMode for better type safety.
- Refactored main content rendering logic to conditionally display analytics or logs table.
- Introduced `LogSavedView` model to manage saved log views in the database.
- Created migration to add `LogSavedView` table with necessary fields and constraints.
- Implemented `LogSavedViewService` for CRUD operations on saved views.
- Enhanced `LogsViewerToolbar` to include buttons for saving views and selecting saved views.
- Added `ColumnSelector` component for managing visible columns in the logs table.
- Created `SavedViewsDropdown` component for selecting and managing saved views.
- Updated types to support new saved views and column options.