# Metrics

## Alluxio Metrics

### Cache Storage

| Metric                                    | Labels | Type    | Component | Description                                                                                                                                                                                                                                               |
| ----------------------------------------- | ------ | ------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `alluxio_cached_storage_bytes`            | -      | gauge   | worker    | amount of the cached data                                                                                                                                                                                                                                 |
| `alluxio_cached_capacity_bytes`           | -      | gauge   | worker    | configured maximum cache storage                                                                                                                                                                                                                          |
| `alluxio_cached_evicted_data_bytes_total` | -      | counter | worker    | amount of the evicted data                                                                                                                                                                                                                                |
| `alluxio_data_cached_files`               | -      | gauge   | worker    | number of files that are currently cached, both fully or partially, in a worker. Note that summing this metric over multiple workers in a cluster does not produce a total number of unique files cached, as files may be replicated on multiple workers. |
| `alluxio_data_cached_pages`               | -      | gauge   | worker    | number of pages being cached in a worker                                                                                                                                                                                                                  |

### Data Access

| Metric                                     | Labels                                 | Type      | Component    | Description                                                                            |
| ------------------------------------------ | -------------------------------------- | --------- | ------------ | -------------------------------------------------------------------------------------- |
| `alluxio_data_access_bytes`                | `method=read/write`                    | histogram | fuse, worker | aggregated all data access requests                                                    |
| `alluxio_data_throughput_bytes_total`      | `method=read/write`                    | counter   | worker       | counter of data throughput of all data access                                          |
| `alluxio_meta_operation_total`             | `op=getStatus/listStatus/...`          | counter   | worker       | counter of rpc calls of the meta operations                                            |
| `alluxio_cached_data_read_bytes_total`     | -                                      | counter   | worker       | number of cache hits in page store                                                     |
| `alluxio_missed_data_read_bytes_total`     | -                                      | counter   | worker       | number of cache misses in page store                                                   |
| `alluxio_ufs_data_access_bytes_total`      | `method=read/write`                    | counter   | fuse, worker | amount of the ufs access                                                               |
| `alluxio_fuse_concurrency`                 | `method=Fuse.Getattr/Fuse.readdir/...` | gauge     | fuse         | record the realtime concurrency for fuse method                                        |
| `alluxio_s3_api_throughput_bytes`          | `method=read/write/list`               | histogram | fuse, worker | histogram of s3 IO API throughput                                                      |
| `alluxio_s3_api_call_processing`           | `method=GetObject/ListObjects/...`     | gauge     | fuse, worker | counter of the s3 API calls that are being processed                                   |
| `alluxio_multi_replica_read_from_workers`  | `cluster_name,local_cluster,hot_read`  | counter   | client       | number of bytes read by a client from Alluxio workers when reading multi-replica files |
| `alluxio_passive_cache_async_loaded_files` | `result=submitted/success/failure`     | counter   | worker       | number of files that are loaded by a worker triggered by passive cache                 |

### Distributed Load

| Metric                                               | Labels                          | Type    | Component   | Description                                                     |
| ---------------------------------------------------- | ------------------------------- | ------- | ----------- | --------------------------------------------------------------- |
| `alluxio_distributed_load_job_scanned_total`         | -                               | counter | coordinator | counter of the inodes scanned in distributed load               |
| `alluxio_distributed_load_job_processed_total`       | -                               | counter | coordinator | counter of the non empty file copies loaded in distributed load |
| `alluxio_distributed_load_job_skipped_total`         | -                               | counter | coordinator | counter of the inodes skipped in distributed load               |
| `alluxio_distributed_load_job_failure_total`         | `reason, final_attempt, worker` | counter | coordinator | counter of the distributed load failure                         |
| `alluxio_distributed_load_job_dispatched_size_total` | -                               | counter | coordinator | counter of the bytes dispatched in distributed load             |
| `alluxio_distributed_load_job_loaded_bytes_total`    | -                               | counter | coordinator | counter of the bytes loaded in distributed load                 |

### License

| Metric                            | Labels | Type  | Description                                      |
| --------------------------------- | ------ | ----- | ------------------------------------------------ |
| `alluxio_license_expiration_date` | -      | gauge | the license expiration date in epoch time format |

## Process and JVM Metrics

| Metric                       | Labels                                             | Type    | Description                                            |
| ---------------------------- | -------------------------------------------------- | ------- | ------------------------------------------------------ |
| `process_start_time_seconds` | -                                                  | gauge   | start time of the process since unix epoch in seconds  |
| `process_cpu_seconds_total`  | -                                                  | counter | total user and system CPU time spent in seconds        |
| `jvm_threads_current`        | -                                                  | gauge   | current thread count of a JVM                          |
| `jvm_memory_used_bytes`      | `area=heap/nonheap`                                | gauge   | used bytes of a given JVM memory area                  |
| `jvm_memory_max_bytes`       | `area=heap/nonheap`                                | gauge   | max (bytes) of a given JVM memory area                 |
| `jvm_gc_collection_seconds`  | `gc="G1 Young Generation"/"G1 Old Generation"/...` | summary | time spent in a given JVM garbage collector in seconds |
