Skip to content

Conversation

@ronething
Copy link
Contributor

@ronething ronething commented Jul 24, 2025

Type of change:

  • Bugfix
  • New feature provided
  • Improve performance
  • Backport patches
  • Documentation
  • Refactor
  • Chore
  • CI/CD or Tests

What this PR does / why we need it:

backport #2480 #2473 #2492 from apisix-ingress-controller repo.

Pre-submission checklist:

  • Did you explain what problem does this PR solve? Or what new features have been added?
  • Have you added corresponding test cases?
  • Have you modified the corresponding document?
  • Is this PR backward compatible? If it is not backward compatible, please discuss on the mailing list first

@ronething ronething requested a review from Copilot July 24, 2025 08:31
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds custom metrics support to the APISIX Ingress Controller, implementing Prometheus-style metrics for monitoring ADC sync operations, file I/O performance, and status update queue management. Additionally, it upgrades the Go version from 1.22 to 1.23 across the project.

  • Implements comprehensive Prometheus metrics for ADC operations, file I/O, and status queue monitoring
  • Adds metrics endpoint exposure through Kubernetes service configuration
  • Integrates metrics collection throughout the ADC sync workflow and status update processes

Reviewed Changes

Copilot reviewed 18 out of 18 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
pkg/metrics/metrics.go New metrics package defining Prometheus metrics for ADC sync, file I/O, and status operations
internal/provider/adc/adc.go Integrates metrics collection into ADC sync operations with timing and error tracking
internal/controller/status/updater.go Adds queue length tracking for status update operations
test/e2e/scaffold/scaffold.go Adds helper method to expose metrics endpoint for testing
test/e2e/apisix/route.go Implements e2e test validation for metrics endpoint functionality
test/e2e/framework/manifests/ingress.yaml Configures metrics port exposure in Kubernetes service and deployment
test/e2e/framework/manifests/apisix.yaml Adds control port configuration for APISIX container
go.mod Upgrades Go version to 1.23 and promotes prometheus client to direct dependency
README.md Updates Go version requirement documentation
.github/workflows/*.yml Updates CI/CD workflows to use Go 1.23

@github-actions
Copy link
Contributor

github-actions bot commented Jul 24, 2025

conformance test report - apisix-standalone mode

apiVersion: gateway.networking.k8s.io/v1
date: "2025-07-25T08:38:56Z"
gatewayAPIChannel: standard
gatewayAPIVersion: v1.2.0
implementation:
  contact: null
  organization: APISIX
  project: apisix-ingress-controller
  url: https://github.com/apache/apisix-ingress-controller.git
  version: v2.0.0
kind: ConformanceReport
mode: default
profiles:
- core:
    failedTests:
    - HTTPRouteMatchingAcrossRoutes
    result: failure
    skippedTests:
    - HTTPRouteHTTPSListener
    statistics:
      Failed: 1
      Passed: 31
      Skipped: 1
  name: GATEWAY-HTTP
  summary: Core tests failed with 1 test failures.

@github-actions
Copy link
Contributor

github-actions bot commented Jul 24, 2025

conformance test report - apisix mode

apiVersion: gateway.networking.k8s.io/v1
date: "2025-07-25T08:40:09Z"
gatewayAPIChannel: standard
gatewayAPIVersion: v1.2.0
implementation:
  contact: null
  organization: APISIX
  project: apisix-ingress-controller
  url: https://github.com/apache/apisix-ingress-controller.git
  version: v2.0.0
kind: ConformanceReport
mode: default
profiles:
- core:
    failedTests:
    - HTTPRouteInvalidBackendRefUnknownKind
    result: failure
    skippedTests:
    - HTTPRouteHTTPSListener
    statistics:
      Failed: 1
      Passed: 31
      Skipped: 1
  name: GATEWAY-HTTP
  summary: Core tests failed with 1 test failures.

@github-actions
Copy link
Contributor

github-actions bot commented Jul 24, 2025

conformance test report

apiVersion: gateway.networking.k8s.io/v1
date: "2025-07-25T08:35:56Z"
gatewayAPIChannel: standard
gatewayAPIVersion: v1.2.0
implementation:
  contact: null
  organization: APISIX
  project: apisix-ingress-controller
  url: https://github.com/apache/apisix-ingress-controller.git
  version: v2.0.0
kind: ConformanceReport
mode: default
profiles:
- core:
    result: partial
    skippedTests:
    - HTTPRouteHTTPSListener
    statistics:
      Failed: 0
      Passed: 32
      Skipped: 1
  name: GATEWAY-HTTP
  summary: Core tests partially succeeded with 1 test skips.

AlinsRan and others added 4 commits July 25, 2025 10:49
* chore: differentiate the API versions for CRD testing

* revert ingress.go

* update test

* update test

Signed-off-by: ashing <[email protected]>
Signed-off-by: ashing <[email protected]>
Signed-off-by: ashing <[email protected]>
@ronething ronething changed the title feat: support custom metrics (#2480) backport: apisix ingress pr #2480 #2473 #2492 Jul 25, 2025
Signed-off-by: ashing <[email protected]>
Signed-off-by: ashing <[email protected]>
@ronething ronething merged commit e2c3632 into release-v2-dev Jul 25, 2025
21 of 22 checks passed
@ronething ronething deleted the crp branch July 25, 2025 09:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants