- 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.
- Introduced DashboardTemplateCard component for displaying dashboard templates.
- Added DashboardTemplates enum and DashboardTemplate interface to define available templates.
- Implemented template selection in the Dashboards page to allow users to create dashboards from predefined templates.
- Enhanced MetricQueryConfig to manage metric attributes and display settings more effectively.
- Updated MetricView to improve loading states and error handling for metric results.
- Refactored DashboardChartComponent to streamline metric alias data handling and improve UI presentation.
- 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.
- 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.
- Introduced KubernetesAffectedResource and KubernetesResourceBreakdown interfaces to enhance metric monitoring capabilities.
- Updated MetricMonitorResponse to include kubernetesResourceBreakdown.
- Enhanced AreaChart, BarChart, and LineChart components with onValueChange prop for better interactivity.
- Added new Dashboard components: Gauge and Table, with respective configuration arguments.
- Implemented DashboardVariableSelector for dynamic variable selection in dashboards.
- Added warning and critical thresholds to DashboardValueComponent and DashboardChartComponent for improved data visualization.
- Updated DashboardChartComponentUtil to support additional queries and chart types.
- Enhanced error handling and loading states in Dashboard components.
- 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.
- Improved formatting and consistency in various Kubernetes view files, including HPADetail, HPAs, Index, Jobs, Layout, Namespaces, NodeDetail, Nodes, PersistentVolumes, Pods, ServiceMesh, SideMenu, StatefulSets, VPADetail, and VPAs.
- Removed unnecessary line breaks and adjusted indentation for better readability.
- Simplified conditional checks and array methods for clarity.
- Enhanced the overall structure of the code to follow best practices.
- Added KubernetesTemplatePicker and KubernetesMetricPicker components for selecting alert templates and metrics.
- Updated KubernetesMonitorStepForm to support quick setup, custom metrics, and advanced configurations.
- Integrated query parameters for pre-filling template and cluster selections.
- Improved user experience with tabs for different setup modes (Quick, Custom, Advanced).
- Updated descriptions and functionality in MonitorStep and Alerts pages to reflect new features.
- Introduced KubernetesMetricCatalog for managing Kubernetes metrics and their properties.
- Implemented KubernetesClusterServiceMesh component to display Istio and Linkerd metrics.
- Created KubernetesClusterVPADetail component for detailed views of Vertical Pod Autoscalers (VPA).
- Added KubernetesClusterVPAs component to list all VPAs in a cluster.
- Introduced KubernetesAlertTemplates for monitoring various Kubernetes conditions, including CrashLoopBackOff, Pod Pending, Node Not Ready, and more.
- Developed MonitorStepKubernetesMonitor interface for Kubernetes monitoring configurations.
- Added top CPU and memory pod consumers to the Kubernetes cluster overview.
- Implemented node pressure indicators for memory, disk, and PID pressure.
- Introduced recent warning events section in the cluster overview.
- Added YAML tab for viewing resource specifications in Job, Namespace, Node, Pod, PVC, PV, and StatefulSet details.
- Updated side menu to display resource counts for various Kubernetes objects.
- Enhanced node detail view with roles, internal IP, and pressure conditions.
- Improved error handling and loading states in the YAML tab component.
- Implemented KubernetesClusterPVCDetail and KubernetesClusterPVCs components to display PVC details and list.
- Created KubernetesClusterPVs component to list all Persistent Volumes in the cluster.
- Updated routing and page mapping for PVCs and PVs.
- Enhanced existing Kubernetes components to utilize new utility functions for better data handling.
- Removed unused InfoCard components for a cleaner UI.
- Added yAxisValueFormatter to metric queries for better chart representation.
- Updated Helm chart to include PVC and PV data collection.
- 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.
- Added missing commas in migration index.
- Improved formatting of permission descriptions for better readability.
- Enhanced dependency array formatting in useEffect hooks in LogsViewer component.
- Cleaned up JSON normalization in LogDetailsPanel for better readability.
- Refactored LogSearchBar component for improved readability and structure.
- Simplified filter logic in AnalyticsTooltip and LogsAnalyticsView components.
- Streamlined LogScrubRuleService methods for better clarity and consistency.
- Updated OtelLogsIngestService to improve readability of async calls.
- Enhanced LogFilterEvaluator comments and formatting for better understanding.
- 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 retentionDate column to Log, Metric, Span, and MonitorLog models for per-service data retention.
- Implemented TTL configuration using retentionDate to enable automatic data deletion in ClickHouse.
- Added skip indexes for improved query performance on relevant columns in Log, Span, Metric, and Exception models.
- Updated ingestion services to compute and store retentionDate based on service-specific retention settings.
- Created a data migration to add retentionDate columns and skip indexes to existing telemetry tables.
- Deprecated the cron job for data deletion, transitioning to ClickHouse's native TTL mechanism.
- Updated arrow functions to use explicit return statements in several files for clarity.
- Adjusted formatting and indentation for better code structure.
- Simplified some conditional checks and improved variable declarations.
- Enhanced error handling in Workflow feature set for documentation retrieval.
- Ensured consistent use of TypeScript types across components.
- Add FacetValueRow component for displaying facet values with counts and actions.
- Introduce HistogramTooltip component for displaying histogram data with severity colors.
- Create LogSearchBar component for improved log searching with suggestions and query syntax.
- Implement LogSearchSuggestions component for displaying search suggestions.
- Develop LogsFacetSidebar component for displaying filters and facets in the sidebar.
- Add LogsHistogram component for visualizing log volume over time with severity differentiation.
- Create severityColors utility for managing severity color mappings.
- Document the roadmap for enhancing log management capabilities, including search UX, analytics, and operational features.