Skip to main content


JuiceFS provided a Prometheus API for each file system, this page only contains some of the mostly used metrics. For the full metrics list, visit JuiceFS console, navigate to the "Monitor" page, and click "Prometheus API".


Some of the metrics come with multiple subnodes, and are omitted in this section. e.g. juicefs_fuse_ops_lookupjuicefs_fuse_ops_open are all included in juicefs_fuse_ops_<name>.

On the other hand, metrics introduced in this chapter all start with the juicefs_ prefix, this is different in on-prem Grafana data source, for example:

  • juicefs_trash_size is called jfs_stat_trash_size
  • juicefs_operationDuration is called mount_operationDuration

So when you encounter trouble searching for the desired metrics, strip the prefix or suffix and try again.

File system


namefile system name


juicefs_sizesize of filesbyte
juicefs_inodesnumber of inodes
juicefs_trash_sizesize of files in Trashbyte
juicefs_trash_filesnumber of files in Trash



namefile system name
hostclient hostname
ipclient IP address
mountpointpath of mount point


Operating system

juicefs_cpuusageoverall CPU usage timemicrosecond
juicefs_memusagecurrent RSS memory usagebyte
juicefs_heapSysTotal memory allocated to the client process, same as Sysbyte
juicefs_heapInuseSame as HeapInusebyte
juicefs_handlesNumber of file handlers (descriptors)
juicefs_threadsNumber of threads in the client process, see ThreadCreateProfile
juicefs_goroutinesNumber of goroutines in the client process
juicefs_gcPauseSame as PauseTotalNsnanosecond

Metadata service

juicefs_metaDurationDuration of Metadata requestsmicrosecond
juicefs_metaRequestNumber of Metadata requests
juicefs_metaSum of all meta metrics, not very useful
juicefs_meta_operationsNumber of metadata operations
juicefs_meta_bytes_sentMetadata requests sent trafficbyte
juicefs_meta_bytes_receivedMetadata requests received trafficbyte
juicefs_meta_packets_sentMetadata requests sent packets
juicefs_meta_packets_receivedMetadata requests received packets
juicefs_meta_reconnectsNumber of metadata service reconnects
juicefs_meta_usec_pingPing latency between client and metadata servicemicrosecond
juicefs_meta_dircacheNumber of client memory metadata cache operations
juicefs_meta_dircache_<name>Number of different types of client memory metadata cache operations
juicefs_meta_dircache0_dirsNumber of directories in the client memory metadata cache
juicefs_meta_dircache0_inodesNumber of inodes in the client memory metadata cache

File access

juicefs_read_bytesTotal read bytes, different from juicefs_get_bytes, this is counted in the file system levelbyte
juicefs_write_bytesTotal write bytes, different from juicefs_put_bytes, this is counted in the file system levelbyte
juicefs_operationsNumber of file operations
juicefs_operationDurationFile operation latency
juicefs_fuse_opsNumber of file operations, roughly the same as juicefs_operations, but counted by summing up all different operation types
juicefs_fuse_ops_<name>Number of single file operations, e.g. getattrlookupopen
juicefs_openfilesNumber of opened files
juicefs_bgjobsNumber of currently running background jobs
juicefs_bgjobs_compactNumber of currently running compaction in background jobs
juicefs_bgjobs_deleteNumber of currently running Trash deletion in background jobs
juicefs_compactsNumber of successful compactions
juicefs_compact_bytesCompaction trafficbyte


juicefs_totalBufferUsedUsed buffer sizebyte
juicefs_readBufferUsedUsed read buffer sizebyte

Local cache

juicefs_blockcache_blocksNumber of cache blocks
juicefs_blockcache_bytesSize of cache blocksbyte
juicefs_blockcache_hitsNumber of cache block hits
juicefs_blockcache_hitBytesBytes of cache block hitsbyte
juicefs_blockcache_missNumber of missed cache block hits
juicefs_blockcache_missBytesSize of missed cache block hitsbyte
juicefs_blockcache_evictNumber of cache block evictions
juicefs_blockcache_evictBytesSize of cache block evictionsbyte
juicefs_blockcache_evictDurDuration of cache block evictionsmicrosecond
juicefs_blockcache_readDurationDuration of cache block readsmicrosecond
juicefs_blockcache_writeNumber of cache block writes
juicefs_blockcache_writeBytesSize of cache block writesbyte
juicefs_blockcache_writeDurationDuration of cache block writesmicrosecond
juicefs_symlink_cacheSum of symbolic link cache related metrics, not very useful
juicefs_symlink_cache_<name>Metrics of different types of symbolic link cache operations

Distributed cache

Architecture and related practices are introduced in Distributed Cache.

In the cache group, there will be corresponding metrics for "sender" and "receiver" for reading data and writing data. For example, when reading files through a cache group, member nodes will not only receive data from other members, but also share and send their own cache data to other members.

There are two sets of mutually contrasting metrics in distributed cache metrics, corresponding to different application scenarios:

  • remotecache_get and remotecache_send: correspond to the scenario where the client reads data from the distributed cache
  • remotecache_receive and remotecache_put: correspond to the scenario where the client writes data to the distributed cache (the --fill-group-cache option needs to be enabled), or the scenario of balancing data in the distributed cache.

It should be noted that there is no correlation between metrics in different groups. For example, the two metrics remotecache_get and remotecache_put are not related in any way (don’t be misled by the name).

No matter what the scenario is, each source and destination has its own metrics. Using a simple 2-node cache group as an example:

  • The remotecache_sendBytes metric in node A represents the data sent by A for file read requests. Similarly, remotecache_sendBytes metric in node B represents the data sent by B.
  • The remotecache_getBytes metric in node B represents the data received by B for file read requests. Similarly, remotecache_getBytes metric in node A represents the data received by A.

Therefore, under normal circumstances, if you sum up metrics of all cache group members (including --no-sharing clients), the size of remotecache_sendBytes should be roughly equal to remotecache_getBytes. If it is found that remotecache_sendBytes is much larger that remotecache_getBytes, it means that there are errors during data transfer, check remotecache_errors metric and client logs for causes.

The metrics related to file reads in a cache group are mostly the same as those for writes.

juicefs_remotecache_errorsNumber of all failed requests
juicefs_remotecache_getNumber of requests for cache group client to read data
juicefs_remotecache_getBytesSize of cache group client read requestbyte
juicefs_remotecache_getDurationLatency of cache group client read requestmicrosecond
juicefs_remotecache_sendNumber of requests for data sent by cache group client
juicefs_remotecache_sendBytesSize of the data sent by the cache group clientbyte
juicefs_remotecache_sendDurationLatency for cache group client to send data, including the latency in reading the local cache (juicefs_blockcache_readDuration). If there is no hit in the local cache, it also includes the request time of the object storage (juicefs_objectDuration_get). If the object storage response is slow or there is a speed limit, this metric will increase.microsecond
juicefs_remotecache_putNumber of requests for cache group client to write data
juicefs_remotecache_putBytesSize of cache group client write requestbyte
juicefs_remotecache_putDurationLatency of cache group client write requestmicrosecond
juicefs_remotecache_receiveNumber of requests for cache group client to receive data
juicefs_remotecache_receiveBytesSize of the data received by the cache group clientbyte
juicefs_remotecache_recvDurationLatency for cache group client to receive datamicrosecond

Object storage

juicefs_objectNumber of total object storage requests
juicefs_object_getNumber of GetObject requests
juicefs_object_putNumber of PutObject requests
juicefs_object_deleteNumber of DeleteObject requests
juicefs_object_copyNumber of CopyObject requests
juicefs_object_headNumber of HeadObject requests
juicefs_object_listNumber of ListObjects requests
juicefs_objectDurationDuration of all object storage requestsmicrosecond
juicefs_objectDuration_getDuration of GetObject requestsmicrosecond
juicefs_objectDuration_getDelayGetObject requests wait, wait is caused by client token speed control or congestion caused by low --max-downloadsmicrosecond
juicefs_objectDuration_putDuration of PutObject requestsmicrosecond
juicefs_objectDuration_putDelayPutObject requests wait, wait is caused by client token speed control or congestion caused by low --max-uploadsmicrosecond
juicefs_objectDuration_deleteDuration of DeleteObject requestsmicrosecond
juicefs_object_errorNumber of object storage requests failures
juicefs_get_bytesSize of GET requestsbyte
juicefs_put_bytesSize of PUT requestsbyte