All files / platform/packages/prometheus/config index.js

100% Statements 1/1
100% Branches 0/0
100% Functions 0/0
100% Lines 1/1

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79    1x                                                                                                                                                        
'use strict';
 
module.exports = {
  /*
  |--------------------------------------------------------------------------
  | Expose prometheus metrics via HTTP endpoint.
  |--------------------------------------------------------------------------
  */
  exposeHttpEndpoint: true,
 
  /*
  |--------------------------------------------------------------------------
  | Endpoint to GET prometheus metrics.
  |--------------------------------------------------------------------------
  */
  endpoint: '/metrics',
 
  /*
  |--------------------------------------------------------------------------
  | System Metric.
  |--------------------------------------------------------------------------
  |
  | Collect overall performance metrics (NodeJS) of the entire application.
   */
  systemMetrics: {
    enabled: true,
    prefix: '',
  },
 
  /*
  |--------------------------------------------------------------------------
  | HTTP metric (duration per request, total requests, average duration)
  |--------------------------------------------------------------------------
  |
  | Measures the performance of HTTP request based on status codes returned.
   */
  httpMetric: {
    enabled: true,
    // https://prometheus.io/docs/practices/naming/
    name: 'http_request_duration_seconds',
    includeQueryParams: false,
    help: 'Total time each HTTP request takes.',
    labelNames: ['method', 'url', 'statusCode'],
    // 0.1-0.5, 0.2-1.0, 0.5-2 are pairs for Apdex score ranging from good > intermediate > acceptable performance profile
    // any greater than those are unacceptable
    buckets: [0.1, 0.2, 0.5, 1.0, 2.0, 5],
    prefix: '',
  },
 
  /*
  |--------------------------------------------------------------------------
  | Uptime
  |--------------------------------------------------------------------------
  |
  | Track the uptime of the entire application.
   */
  uptimeMetric: {
    enabled: true,
    name: 'server_uptime_total',
    help: 'Uptime performance of the application (1 = up, 0 = down)',
    prefix: '',
  },
 
  /*
  |--------------------------------------------------------------------------
  | HTTP request total metric
  |--------------------------------------------------------------------------
  |
  | Measures number of requests handled into the application.
  */
  httpReqTotalMetric: {
    enabled: true,
    name: 'http_requests_total',
    labelNames: ['method', 'statusCode'],
    help: 'No. of requests handled.',
    prefix: '',
  },
};