Artifactory Federation Service Metrics Reference

The Artifactory Federation Service (RTFS) exposes operational metrics in OpenMetrics format, compatible with Prometheus and other monitoring systems. These metrics provide visibility into federation health, synchronization performance, and system resources.

All RTFS custom metrics use the prefix jfrtfs_. The metrics endpoint also exposes system/JVM/Actuator metrics.

Note: OpenMetrics for RTFS is available for self-hosted deployments only, not JFrog Cloud.
Since: 7.111.12, 7.117.5

Usage:

GET /rtfs/api/v1/metrics

Produces: text/plain (OpenMetrics format)

Sample Usage:

curl -H "Authorization: Bearer <ACCESS_TOKEN>" https://<ARTIFACTORY_URL>/rtfs/api/v1/metrics

Prometheus Integration (Kubernetes)

RTFS includes a ServiceMonitor for Prometheus Operator. Enable in Helm values:

serviceMonitor:
  enabled: true
  interval: 60s
  scrapeTimeout: 15s

Federation Health Metrics

Metric NameTypeDescriptionLabels
jfrtfs_members_in_statusGaugeNumber of federation members in a specific statustenant, member_status
jfrtfs_members_in_status_target_shGaugeNumber of self-hosted target members in error statustenant, member_status
jfrtfs_disabled_membersGaugeCount of disabled federation memberstenant

Member Status Values: FULL_SYNC_RUNNING, PENDING_FS, IMPORT_IN_PROGRESS, FULL_SYNC_PREPARING, FOR_REMOVAL, READ_ONLY, ERROR_GENERIC, ERROR_OUT_OF_SYNC, ERROR_INACTIVE


Synchronization Metrics

Metric NameTypeDescriptionLabels
jfrtfs_worker_lagGaugeMaximum lag (ms) between oldest event and processing completiontenant
jfrtfs_worker_repo_lagGaugePer-repository lag (ms) for top lagging repositoriestenant, source_and_remote_repo_keys, remote_member_jpd_url
jfrtfs_events_sent_to_remote_instanceCounterTotal events sent to remote instancestenant, propagation_type or error
jfrtfs_events_received_from_remote_rtfsCounterTotal events received from remote RTFStenant
jfrtfs_events_removed_in_filterCounterEvents filtered out during processingtenant

Full Sync Metrics

Metric NameTypeDescriptionLabels
jfrtfs_full_sync_e2e_member_executionTimerFull sync duration per membertenant, source_jpd_url, source_repo_key, remote_member_jpd_url, remote_member_repo_key
jfrtfs_full_sync_file_list_artifactsGaugeNumber of artifacts in file listtenant, source_repo_key
jfrtfs_full_sync_file_list_rate_artifact_per_secGaugeFile list processing rate (artifacts/sec)tenant, source_repo_key
jfrtfs_full_sync_sort_rate_artifact_per_secGaugeFile list sort rate (artifacts/sec)tenant, source_repo_key
jfrtfs_full_sync_artifact_events_propagation_rateGaugeEvent propagation rate (per ms)tenant
jfrtfs_full_sync_failureCounterFull sync failure counttenant, error

Binary Tasks Metrics

Metric NameTypeDescriptionLabels
jfrtfs_binary_tasks_total_count_by_statusCounterBinary tasks count by statustenant, binary_task_status
jfrtfs_binary_tasks_counter_pending_with_lag_per_tenantMultiGaugeBinary tasks pending with lag per tenanttenant
jfrtfs_binary_tasks_counter_executing_with_lag_per_tenantMultiGaugeBinary tasks executing with lag per tenanttenant
jfrtfs_binary_tasks_handler_execution_duration_millisTimerBinary handler execution time-

Auto-Healing Metrics

Metric NameTypeDescriptionLabels
jfrtfs_auto_healing_recovered_membersCounterMembers recovered by auto-healingmember_status

Database Metrics

Metric NameTypeDescriptionLabels
jfrtfs_db_failed_query_countCounterFailed database query countquery
jfrtfs_event_dao_add_artifact_eventsTimerTime to add events to database-
jfrtfs_worker_load_next_eventsTimerTime to load next events batch-
jfrtfs_worker_send_eventsTimerTime for worker to send events-
jfrtfs_single_worker_event_send_avg_timeTimerAverage time per individual event handling-

HTTP Client Metrics

Metric NameTypeDescriptionLabels
jfrtfs_http_client_connections_availableGaugeAvailable HTTP connections (%)-
jfrtfs_http_client_connections_leasedGaugeLeased HTTP connections (%)-
jfrtfs_http_client_connections_pendingGaugePending HTTP connection requests-

Configuration Integrity Metrics

Metric NameTypeDescriptionLabels
jfrtfs_inconsistent_repo_configs_to_remote_rtfs_countGaugeRepos not synced with remote memberstenant
jfrtfs_inconsistent_repo_configs_to_local_rt_countGaugeRepos not synced with local Artifactorytenant
jfrtfs_total_repo_configs_in_rtfsGaugeTotal repos configured in RTFStenant
jfrtfs_total_repo_configs_in_rtGaugeTotal repos in Artifactorytenant
jfrtfs_rt_to_rt_enabled_mismatch_countGaugeEnable/disable mismatch between Artifactory instancestenant
jfrtfs_rt_to_access_enabled_mismatch_countGaugeEnable/disable mismatch between local Artifactory and Accesstenant
jfrtfs_member_state_to_access_enabled_mismatch_countGaugeEnable/disable mismatch between local member state and remote Accesstenant
jfrtfs_member_state_jpd_to_jpd_config_mismatch_countCounterJPDs whose config does not existtenant
jfrtfs_member_state_jpd_to_master_token_mismatch_countCounterJPDs whose master token does not existtenant

Event Processing Metrics

Metric NameTypeDescriptionLabels
jfrtfs_source_repo_event_failuresCounterFailures processing repo events on source membertenant
jfrtfs_target_repo_event_failuresCounterFailures processing repo events on target memberTenant, error

Partition Management Metrics

Metric NameTypeDescriptionLabels
jfrtfs_repo_management_events_duration_between_partition_creationsGaugeTime between event partition creations (ms)tenant
jfrtfs_repo_management_message_blob_duration_between_partition_creationsGaugeTime between blob partition creations (ms)tenant
jfrtfs_sub_partition_total_countGaugeTotal sub-partitions counttenant, table_name
jfrtfs_sub_partition_pk_countGaugeSub-partitions with primary keystenant, table_name

Available Metric Labels

LabelDescription
tenantTenant identifier
source_jpd_urlSource JPD URL
source_repo_keySource repository key
remote_member_jpd_urlRemote member JPD URL
remote_member_repo_keyRemote member repository key
source_and_remote_repo_keysCombined source and remote repo keys (format: localRepoKey__remoteRepoKey)
member_statusMember state status
errorError type or phase
queryDatabase query identifier
binary_task_statusBinary task status
table_nameDatabase table name

Example Prometheus Queries

Monitor Federation Lag

# Alert if worker lag exceeds 5 minutes
jfrtfs_worker_lag{tenant="my-tenant"} > 300000

Track Sync Failures

# Rate of full sync failures over 1 hour
rate(jfrtfs_full_sync_failure[1h])

Check Member Health

# Members in error state
jfrtfs_members_in_status{member_status=~"ERROR.*"}

Monitor HTTP Client Pool

# Alert if available connections drop below 20%
jfrtfs_http_client_connections_available < 20

Track Disabled Members

# Count of disabled federation members per tenant
jfrtfs_disabled_members