holmesgpt 0.14.0a0__py3-none-any.whl → 0.14.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of holmesgpt might be problematic. Click here for more details.
- holmes/__init__.py +1 -1
- holmes/clients/robusta_client.py +15 -4
- holmes/common/env_vars.py +8 -1
- holmes/config.py +66 -139
- holmes/core/investigation.py +1 -2
- holmes/core/llm.py +295 -52
- holmes/core/models.py +2 -0
- holmes/core/safeguards.py +4 -4
- holmes/core/supabase_dal.py +14 -8
- holmes/core/tool_calling_llm.py +110 -102
- holmes/core/tools.py +260 -25
- holmes/core/tools_utils/data_types.py +81 -0
- holmes/core/tools_utils/tool_context_window_limiter.py +33 -0
- holmes/core/tools_utils/tool_executor.py +2 -2
- holmes/core/toolset_manager.py +150 -3
- holmes/core/transformers/__init__.py +23 -0
- holmes/core/transformers/base.py +62 -0
- holmes/core/transformers/llm_summarize.py +174 -0
- holmes/core/transformers/registry.py +122 -0
- holmes/core/transformers/transformer.py +31 -0
- holmes/main.py +5 -0
- holmes/plugins/prompts/_fetch_logs.jinja2 +10 -1
- holmes/plugins/toolsets/aks-node-health.yaml +46 -0
- holmes/plugins/toolsets/aks.yaml +64 -0
- holmes/plugins/toolsets/atlas_mongodb/mongodb_atlas.py +17 -15
- holmes/plugins/toolsets/azure_sql/tools/analyze_connection_failures.py +8 -4
- holmes/plugins/toolsets/azure_sql/tools/analyze_database_connections.py +7 -3
- holmes/plugins/toolsets/azure_sql/tools/analyze_database_health_status.py +3 -3
- holmes/plugins/toolsets/azure_sql/tools/analyze_database_performance.py +3 -3
- holmes/plugins/toolsets/azure_sql/tools/analyze_database_storage.py +7 -3
- holmes/plugins/toolsets/azure_sql/tools/get_active_alerts.py +4 -4
- holmes/plugins/toolsets/azure_sql/tools/get_slow_queries.py +7 -3
- holmes/plugins/toolsets/azure_sql/tools/get_top_cpu_queries.py +7 -3
- holmes/plugins/toolsets/azure_sql/tools/get_top_data_io_queries.py +7 -3
- holmes/plugins/toolsets/azure_sql/tools/get_top_log_io_queries.py +7 -3
- holmes/plugins/toolsets/bash/bash_toolset.py +6 -6
- holmes/plugins/toolsets/bash/common/bash.py +7 -7
- holmes/plugins/toolsets/coralogix/toolset_coralogix_logs.py +5 -3
- holmes/plugins/toolsets/datadog/datadog_api.py +490 -24
- holmes/plugins/toolsets/datadog/datadog_logs_instructions.jinja2 +21 -10
- holmes/plugins/toolsets/datadog/toolset_datadog_general.py +344 -205
- holmes/plugins/toolsets/datadog/toolset_datadog_logs.py +189 -17
- holmes/plugins/toolsets/datadog/toolset_datadog_metrics.py +95 -30
- holmes/plugins/toolsets/datadog/toolset_datadog_rds.py +10 -10
- holmes/plugins/toolsets/datadog/toolset_datadog_traces.py +20 -20
- holmes/plugins/toolsets/git.py +21 -21
- holmes/plugins/toolsets/grafana/common.py +2 -2
- holmes/plugins/toolsets/grafana/toolset_grafana.py +4 -4
- holmes/plugins/toolsets/grafana/toolset_grafana_loki.py +5 -4
- holmes/plugins/toolsets/grafana/toolset_grafana_tempo.jinja2 +123 -23
- holmes/plugins/toolsets/grafana/toolset_grafana_tempo.py +165 -307
- holmes/plugins/toolsets/internet/internet.py +3 -3
- holmes/plugins/toolsets/internet/notion.py +3 -3
- holmes/plugins/toolsets/investigator/core_investigation.py +3 -3
- holmes/plugins/toolsets/kafka.py +18 -18
- holmes/plugins/toolsets/kubernetes.yaml +58 -0
- holmes/plugins/toolsets/kubernetes_logs.py +6 -6
- holmes/plugins/toolsets/kubernetes_logs.yaml +32 -0
- holmes/plugins/toolsets/logging_utils/logging_api.py +1 -1
- holmes/plugins/toolsets/mcp/toolset_mcp.py +4 -4
- holmes/plugins/toolsets/newrelic.py +5 -5
- holmes/plugins/toolsets/opensearch/opensearch.py +5 -5
- holmes/plugins/toolsets/opensearch/opensearch_logs.py +7 -7
- holmes/plugins/toolsets/opensearch/opensearch_traces.py +10 -10
- holmes/plugins/toolsets/prometheus/prometheus.py +841 -351
- holmes/plugins/toolsets/prometheus/prometheus_instructions.jinja2 +39 -2
- holmes/plugins/toolsets/prometheus/utils.py +28 -0
- holmes/plugins/toolsets/rabbitmq/toolset_rabbitmq.py +6 -4
- holmes/plugins/toolsets/robusta/robusta.py +10 -10
- holmes/plugins/toolsets/runbook/runbook_fetcher.py +4 -4
- holmes/plugins/toolsets/servicenow/servicenow.py +6 -6
- holmes/plugins/toolsets/utils.py +88 -0
- holmes/utils/config_utils.py +91 -0
- holmes/utils/env.py +7 -0
- holmes/utils/holmes_status.py +2 -1
- holmes/utils/sentry_helper.py +41 -0
- holmes/utils/stream.py +9 -0
- {holmesgpt-0.14.0a0.dist-info → holmesgpt-0.14.1.dist-info}/METADATA +10 -14
- {holmesgpt-0.14.0a0.dist-info → holmesgpt-0.14.1.dist-info}/RECORD +82 -72
- {holmesgpt-0.14.0a0.dist-info → holmesgpt-0.14.1.dist-info}/LICENSE.txt +0 -0
- {holmesgpt-0.14.0a0.dist-info → holmesgpt-0.14.1.dist-info}/WHEEL +0 -0
- {holmesgpt-0.14.0a0.dist-info → holmesgpt-0.14.1.dist-info}/entry_points.txt +0 -0
|
@@ -18,7 +18,7 @@ from holmes.plugins.toolsets.opensearch.opensearch_utils import (
|
|
|
18
18
|
add_auth_header,
|
|
19
19
|
get_search_url,
|
|
20
20
|
)
|
|
21
|
-
from holmes.core.tools import StructuredToolResult,
|
|
21
|
+
from holmes.core.tools import StructuredToolResult, StructuredToolResultStatus
|
|
22
22
|
from holmes.plugins.toolsets.utils import get_param_or_raise, toolset_name_for_one_liner
|
|
23
23
|
|
|
24
24
|
TRACES_FIELDS_CACHE_KEY = "cached_traces_fields"
|
|
@@ -48,7 +48,7 @@ class GetTracesFields(Tool):
|
|
|
48
48
|
if cached_response:
|
|
49
49
|
logging.debug("traces fields returned from cache")
|
|
50
50
|
return StructuredToolResult(
|
|
51
|
-
status=
|
|
51
|
+
status=StructuredToolResultStatus.SUCCESS,
|
|
52
52
|
data=cached_response,
|
|
53
53
|
params=params,
|
|
54
54
|
)
|
|
@@ -81,7 +81,7 @@ class GetTracesFields(Tool):
|
|
|
81
81
|
if self._cache:
|
|
82
82
|
self._cache[TRACES_FIELDS_CACHE_KEY] = response
|
|
83
83
|
return StructuredToolResult(
|
|
84
|
-
status=
|
|
84
|
+
status=StructuredToolResultStatus.SUCCESS,
|
|
85
85
|
data=response,
|
|
86
86
|
params=params,
|
|
87
87
|
)
|
|
@@ -90,21 +90,21 @@ class GetTracesFields(Tool):
|
|
|
90
90
|
"Timeout while fetching opensearch traces fields", exc_info=True
|
|
91
91
|
)
|
|
92
92
|
return StructuredToolResult(
|
|
93
|
-
status=
|
|
93
|
+
status=StructuredToolResultStatus.ERROR,
|
|
94
94
|
error="Request timed out while fetching opensearch traces fields",
|
|
95
95
|
params=params,
|
|
96
96
|
)
|
|
97
97
|
except RequestException as e:
|
|
98
98
|
logging.warning("Failed to fetch opensearch traces fields", exc_info=True)
|
|
99
99
|
return StructuredToolResult(
|
|
100
|
-
status=
|
|
100
|
+
status=StructuredToolResultStatus.ERROR,
|
|
101
101
|
error=f"Network error while opensearch traces fields: {str(e)}",
|
|
102
102
|
params=params,
|
|
103
103
|
)
|
|
104
104
|
except Exception as e:
|
|
105
105
|
logging.warning("Failed to process opensearch traces fields", exc_info=True)
|
|
106
106
|
return StructuredToolResult(
|
|
107
|
-
status=
|
|
107
|
+
status=StructuredToolResultStatus.ERROR,
|
|
108
108
|
error=f"Unexpected error: {str(e)}",
|
|
109
109
|
params=params,
|
|
110
110
|
)
|
|
@@ -157,7 +157,7 @@ class TracesSearchQuery(Tool):
|
|
|
157
157
|
|
|
158
158
|
logs_response.raise_for_status()
|
|
159
159
|
return StructuredToolResult(
|
|
160
|
-
status=
|
|
160
|
+
status=StructuredToolResultStatus.SUCCESS,
|
|
161
161
|
data=json.dumps(logs_response.json()),
|
|
162
162
|
params=params,
|
|
163
163
|
)
|
|
@@ -166,14 +166,14 @@ class TracesSearchQuery(Tool):
|
|
|
166
166
|
"Timeout while fetching opensearch traces search", exc_info=True
|
|
167
167
|
)
|
|
168
168
|
return StructuredToolResult(
|
|
169
|
-
status=
|
|
169
|
+
status=StructuredToolResultStatus.ERROR,
|
|
170
170
|
error=f"Request timed out while fetching opensearch traces search {err_msg}",
|
|
171
171
|
params=params,
|
|
172
172
|
)
|
|
173
173
|
except RequestException as e:
|
|
174
174
|
logging.warning("Failed to fetch opensearch traces search", exc_info=True)
|
|
175
175
|
return StructuredToolResult(
|
|
176
|
-
status=
|
|
176
|
+
status=StructuredToolResultStatus.ERROR,
|
|
177
177
|
error=f"Network error while opensearch traces search {err_msg} : {str(e)}",
|
|
178
178
|
params=params,
|
|
179
179
|
)
|
|
@@ -182,7 +182,7 @@ class TracesSearchQuery(Tool):
|
|
|
182
182
|
"Failed to process opensearch traces search ", exc_info=True
|
|
183
183
|
)
|
|
184
184
|
return StructuredToolResult(
|
|
185
|
-
status=
|
|
185
|
+
status=StructuredToolResultStatus.ERROR,
|
|
186
186
|
error=f"Unexpected error {err_msg}: {str(e)}",
|
|
187
187
|
params=params,
|
|
188
188
|
)
|