Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

InfluxDB Backend Listener: Limited error information and missing assertion failure details

Đang mở
#6,491 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
50/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
java
Lĩnh vực
backend, observability-sre

Hướng nghiên cứu

Bắt đầu tại src/components/src/main/java/org/apache/jmeter/visualizers/backend/SamplerMetric.java, tập trung vào SamplerMetric.add() và cách xử lý lỗi hiện tại của nó. Tái hiện lỗi bằng một Response Assertion cố tình gây thất bại và InfluxDB Backend Listener, sau đó xác minh rằng tên assertion, thông báo lỗi và lỗi HTTP được biểu diễn riêng biệt trong các metric được báo cáo.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

defect to-triage
Expected behavior

When using the InfluxDB Backend Listener, error metrics should capture complete error information including:

  1. Detailed Assertion Failures: Each failed assertion should be reported with:
    • Assertion name (e.g., "Response Assertion", "Duration Assertion")
    • Specific failure message (e.g., "Expected to contain 'success' but found 'error'")
    • Individual error count for each assertion type
  2. HTTP Response Failures: Non-assertion failures should report:
    • HTTP response codes (e.g., "404", "500")
    • Response messages (e.g., "Not Found", "Internal Server Error")
  3. Comprehensive Error Categorization: Errors should be properly categorized and distinguishable in InfluxDB/Grafana dashboards
Actual behavior

The InfluxDB Backend Listener currently provides limited error information:

  1. Missing Assertion Details: Assertion failures are completely ignored in error metrics
    • No individual assertion failure reporting
    • No distinction between different types of assertion failures
    • Loss of valuable debugging information
  2. Incomplete Error Information: Only HTTP response code/message errors are captured
    • Assertion failures are not reflected in error metrics
    • No visibility into specific assertion failure reasons
    • Difficult to debug test failures without detailed error context
  3. Poor Error Debugging: Users cannot identify:
    • Which specific assertions are failing
    • Why assertions are failing (missing expected text, duration exceeded, etc.)
    • Patterns in assertion failures across different test scenarios

I have the potential solution to resolve this issue: The issue is in the SamplerMetric.add() method in src/components/src/main/java/org/apache/jmeter/visualizers/backend/SamplerMetric.java. The current implementation only creates ErrorMetric objects based on HTTP response codes, ignoring assertion failures entirely.

Required Changes:

  • Enhance Error Processing: Modify the error handling logic to process both HTTP response failures and assertion failures
  • Add Assertion Failure Support: Create ErrorMetric objects for each failed assertion with assertion name and failure message
  • Improve Error Categorization: Distinguish between HTTP response errors and assertion errors in the metrics
Steps to reproduce the problem
  1. Create JMeter Test Plan:
    • Add Thread Group
    • Add HTTP Request sampler (configure valid URL)
    • Add Response Assertion (configure to fail - e.g., check for text that doesn't exist)
    • Add InfluxDB Backend Listener
  2. Configure Response Assertion:
    • Set "Apply to" to "Main sample only"
    • Add "Contains" pattern with text that won't be found in response Or add Duration Assertion with very low threshold (e.g., 1ms)
  3. Configure InfluxDB Backend Listener:
    • Set InfluxDB URL
    • Set database name
    • Enable "summaryOnly" = false
    • Set appropriate measurement name
  4. Run Test and observe in InfluxDB/Grafana:
    • Expected: Error metrics showing all assertion name (in responseCode) and failure message (in responseMessage) per sample/ transaction
    • Actual: No error metrics for assertion failures, only constant Error responseCode (Assertion Failed) and single assertion failed message per sample/ transaction are captured
  5. Verify Missing Information:
    • Check InfluxDB for error metrics with assertion names
    • Verify that assertion failure messages are not present
    • Confirm that only HTTP response codes appear in error metrics
JMeter Version

5.6.3

Java Version

No response

OS Version

No response

Ngôn ngữ chính
Java
Star
9.6k
Fork
2.3k
Merge trung bình
18 giờ 33 phút
Pull request đã merge (30 ngày)
12

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/jmeter

Tất cả issue của apache/jmeter

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.