*** layout: overview slug: nemo-curator/nemo\_curator/metrics/utils title: nemo\_curator.metrics.utils ---------------------------------- ## Module Contents ### Functions | Name | Description | | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | | [`_get_all_discovery_paths`](#nemo_curator-metrics-utils-_get_all_discovery_paths) | Extract all file paths from all file\_sd\_configs entries in the prometheus config. | | [`_is_process_running_from_pidfile`](#nemo_curator-metrics-utils-_is_process_running_from_pidfile) | Check if a process is running by reading its PID from a file and verifying it's alive. | | [`_resolve_metrics_dir`](#nemo_curator-metrics-utils-_resolve_metrics_dir) | Resolve the metrics directory, defaulting to DEFAULT\_NEMO\_CURATOR\_METRICS\_PATH. | | [`_write_ray_default_dashboards`](#nemo_curator-metrics-utils-_write_ray_default_dashboards) | Generate and write Ray's default Grafana dashboards to the dashboards directory. | | [`add_ray_prometheus_metrics_service_discovery`](#nemo_curator-metrics-utils-add_ray_prometheus_metrics_service_discovery) | Add the ray prometheus metrics service discovery to the prometheus config. | | [`download_and_extract_prometheus`](#nemo_curator-metrics-utils-download_and_extract_prometheus) | Download the prometheus tarball and extract it to the metrics directory. | | [`download_grafana`](#nemo_curator-metrics-utils-download_grafana) | Download the grafana tarball and extract it to the metrics directory. | | [`get_prometheus_port`](#nemo_curator-metrics-utils-get_prometheus_port) | Get the port number that Prometheus is running on by reading the port file. | | [`is_grafana_running`](#nemo_curator-metrics-utils-is_grafana_running) | Check if Grafana is currently running for this metrics instance. | | [`is_prometheus_running`](#nemo_curator-metrics-utils-is_prometheus_running) | Check if Prometheus is currently running for this metrics instance. | | [`launch_grafana`](#nemo_curator-metrics-utils-launch_grafana) | Launch the grafana server. | | [`remove_ray_prometheus_metrics_service_discovery`](#nemo_curator-metrics-utils-remove_ray_prometheus_metrics_service_discovery) | Remove the ray prometheus metrics service discovery from the prometheus config. | | [`run_prometheus`](#nemo_curator-metrics-utils-run_prometheus) | Run the prometheus server. | | [`write_grafana_configs`](#nemo_curator-metrics-utils-write_grafana_configs) | Write the grafana configs to the grafana directory. | ### API ```python nemo_curator.metrics.utils._get_all_discovery_paths( prometheus_config: dict ) -> list[str] ``` Extract all file paths from all file\_sd\_configs entries in the prometheus config. ```python nemo_curator.metrics.utils._is_process_running_from_pidfile( pid_file_path: str ) -> bool ``` Check if a process is running by reading its PID from a file and verifying it's alive. ```python nemo_curator.metrics.utils._resolve_metrics_dir( metrics_dir: str | None ) -> str ``` Resolve the metrics directory, defaulting to DEFAULT\_NEMO\_CURATOR\_METRICS\_PATH. ```python nemo_curator.metrics.utils._write_ray_default_dashboards( dashboards_path: str ) -> None ``` Generate and write Ray's default Grafana dashboards to the dashboards directory. ```python nemo_curator.metrics.utils.add_ray_prometheus_metrics_service_discovery( ray_temp_dir: str, metrics_dir: str | None = None ) -> None ``` Add the ray prometheus metrics service discovery to the prometheus config. ```python nemo_curator.metrics.utils.download_and_extract_prometheus( metrics_dir: str | None = None, os_type = None, architecture = None, prometheus_version = None ) -> str ``` Download the prometheus tarball and extract it to the metrics directory. ```python nemo_curator.metrics.utils.download_grafana( metrics_dir: str | None = None ) -> str ``` Download the grafana tarball and extract it to the metrics directory. ```python nemo_curator.metrics.utils.get_prometheus_port( metrics_dir: str | None = None ) -> int ``` Get the port number that Prometheus is running on by reading the port file. ```python nemo_curator.metrics.utils.is_grafana_running( metrics_dir: str | None = None ) -> bool ``` Check if Grafana is currently running for this metrics instance. ```python nemo_curator.metrics.utils.is_prometheus_running( metrics_dir: str | None = None ) -> bool ``` Check if Prometheus is currently running for this metrics instance. ```python nemo_curator.metrics.utils.launch_grafana( grafana_dir: str, grafana_ini_path: str, grafana_web_port: int, metrics_dir: str | None = None ) -> None ``` Launch the grafana server. ```python nemo_curator.metrics.utils.remove_ray_prometheus_metrics_service_discovery( ray_temp_dir: str, metrics_dir: str | None = None ) -> None ``` Remove the ray prometheus metrics service discovery from the prometheus config. ```python nemo_curator.metrics.utils.run_prometheus( prometheus_dir: str, prometheus_web_port: int, metrics_dir: str | None = None ) -> None ``` Run the prometheus server. ```python nemo_curator.metrics.utils.write_grafana_configs( grafana_web_port: int, prometheus_web_port: int, metrics_dir: str | None = None ) -> str ``` Write the grafana configs to the grafana directory.