Sobes.tech
Middle

What metrics are used to evaluate the quality of the system?

sobes.tech AI

Answer from AI

  • Availability: The percentage of time during which the system is fully operational and accessible to users. Often measured as "number of nines" (e.g., 99.999%).

  • Reliability: The ability of the system to perform its intended functions under specified conditions for a given period. Can be measured using metrics like MTBF (Mean Time Between Failures) and MTTR (Mean Time To Recover).

  • Performance: How quickly and efficiently the system processes requests and performs tasks. Includes:

    • Response Time: The time between sending a request and receiving a response.
    • Throughput: The number of requests or transactions processed per unit time.
    • Resource Utilization: CPU, memory, disk, network load.
  • Scalability: The ability of the system to handle increased load (users, data, requests) by adding resources without loss of performance or availability.

  • Security: The presence of vulnerabilities, successful attacks, and compliance with security policies.

  • Recoverability: How quickly the system can be restored after a failure. Measured by MTTR.

  • Error Rate: The percentage of requests or operations that end in error.

  • Latency: The time required to transfer data from one point to another. Can be network, disk, etc.

  • Cost Efficiency: The operational cost of the system at specified levels of other metrics.

  • Customer Satisfaction: Can be measured through surveys, reviews, or user behavior analysis.

// Example metrics collected via Prometheus and visualized in Grafana
// up - service status (1=available, 0=unavailable)
// http_requests_total - total number of HTTP requests
// http_request_duration_seconds - histogram of HTTP request processing time
// node_cpu_utilization - CPU usage on the node
// alerta_alerts_total - number of alerts from Alerta