Cloud customer?
Start for Free >
Upgrade in MyJFrog >
What's New in Cloud >

Search





Overview

The JFrog Platform now supports Open Metrics. To enable those metrics, make the following configuration changes to the Artifactory System YAML.

artifactory:
    metrics:
        enabled: true

Page Contents

 


Supported Open Metrics

Artifactory Metrics

The Get the Open Metrics for Artifactory REST API returns the following metrics in Open Metrics format

Metric

Description

sys_cpu_totaltime_seconds

Total CPU used by the artifactory process

app_disk_total_bytes

Total Disk used by the application (Home directory)

app_disk_free_bytes

Total Disk free
jfrt_artifacts_gc_duration_secondsTime taken by a GC run
jfrt_artifacts_gc_binaries_totalNumber of binaries removed by a GC run
jfrt_artifacts_gc_size_cleaned_bytesSpace reclaimed by a GC run
jfrt_artifacts_gc_current_size_bytesSpace occupied by Binaries after a GC run (Only for FULL GC runs)
jfrt_runtime_heap_freememory_bytesAvailable free memory for JVM 
jfrt_runtime_heap_maxmemory_bytesMaximum memory configured for JVM
jfrt_runtime_heap_totalmemory_bytesTotal memory configured for JVM memory
jfrt_runtime_heap_processors_totalTotal number of processors for JVM memory
jfrt_db_connections_active_totalTotal number of active total DB connections
jfrt_db_connections_idle_totalTotal number of idle DB connections
jfrt_db_connections_max_active_totalTotal number of maximum DB connections
jfrt_db_connections_min_idle_totalTotal number of min idle DB connections
jfrt_http_connections_available_total

Total number of available outbound HTTP connections

jfrt_http_connections_leased_totalTotal number of available leased HTTP connections
jfrt_http_connections_pending_totalTotal number of available pending HTTP connections
jfrt_http_connections_max_totalTotal number of maximum HTTP connections

jfrt_slow_queries_duration_seconds

Slow queries duration in seconds

Xray Metrics

The Xray Metrics REST API returns the following metrics:

MetricDescription
jfxr_db_sync_started_before_secondsSeconds that passed since the last Xray DB sync started running

jfxr_db_sync_running_total

DB sync total running time

jfxr_db_sync_ended_persist_before_seconds

Seconds that passed since completed persisting new updates to the database

jfxr_db_sync_ended_analyze_before_seconds

Seconds that passed since DB sync completed sending all impact analysis messages

jfxr_data_artifacts_total

Total number of Xray scanned artifacts by package type 

Note: Package type is a label package_type

jfxr_data_components_total

Total number of Xray scanned components by package type

Note: Package type is a label package_type

jfxr_performance_server_up_time_seconds

Seconds that passed since Xray server has started on the particular node

Logs

The artifactory_metrics.log will contain system metrics such as: 

      • Total disk space used
      • Total disk space free
      • Time CPU is used by the process
      • JVM available memory
      • JVM number of processors
      • DB number of active, idle, max and min connections
      • HTTP number of available, leased, pending and max connections
      • Xray DB sync running time
      • Xray total number of scanned artifacts and components
      • Xray server start time on a node

The artifactory_metrics_events.log will contain deduplicated metrics related to an event such as a GC run.


Usage Example - Prometheus

Update the prometheus.yml file to add a scrape job. Update the following configuration with the adequate values:

  • job_name: Use a unique name among other scrape jobs. All metrics collected through this job will have automatically a ‘job’ label with this value added to it
  • username: The name of an admin user 
  • password: The admin password
  • targets: The URL of the Artifactory node.
- job_name: 'artifactory'
    scheme: http
    basic_auth:
        username: 'monitoring_user'
        password: 'monitoring_user_password'
    # metrics_path defaults to '/metrics'
    metrics_path: '/artifactory/api/v1/metrics'
    static_configs:
    - targets: ['localhost:8082']

For more information about Prometheus scrap job configuration, see here.
  • No labels
Copyright © 2021 JFrog Ltd.