Bug 1803109

Summary: Capture total CAM app workload migrations by migration state
Product: OpenShift Container Platform Reporter: Sergiusz Urbaniak <surbania>
Component: Migration ToolingAssignee: Derek Whatley <dwhatley>
Status: CLOSED NOTABUG QA Contact: Xin jiang <xjiang>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.2.0CC: ernelson, vlaad, whu
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-10-05 17:22:30 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1803106    
Bug Blocks:    

Description Sergiusz Urbaniak 2020-02-14 14:04:42 UTC
This bug was initially created as a copy of Bug #1803104

I am copying this bug because: 



Add metric gathering for cam_app_workload_migration_total.

- Metric was originally added to mig-controller in fusor/mig-controller#379, got feedback from Clayton
- Metric name was adjusted after consulting with @lilic and @smarterclayton in fusor/mig-controller#385
- Metric was added to mig-operator in fusor/mig-operator#193
- Metric is intended to help us understand at a high level how customers are using app workload migration tooling (CAM) to move apps and PV data between OpenShift clusters, especially when moving from OpenShift 3->4.

Comment 2 whu 2020-04-01 07:46:23 UTC
Have finished the test of this feature against ocp4.4 + CAM 1.1.2 stage. It seems the feature has worked. 

The test logs have logged in https://bugzilla.redhat.com/show_bug.cgi?id=1803104

Approved to merge the new feature to 4.2.z.

Comment 3 whu 2020-04-10 00:50:21 UTC
Have finished the test of this feature against ocp4.2 + CAM 1.1.2 stage. It seems the feature has worked. 

Below are the key test steps:

$oc edit ns  openshift-migration
apiVersion: v1                                                                     
kind: Namespace                                                                    
metadata:                                                                          
  annotations:                                                                     
    openshift.io/node-selector: ""                                                 
  labels:                                                                          
    control-plane: controller-manager                                              
    controller-tools.k8s.io: "1.0"                                                 
    openshift.io/cluster-monitoring: "true"         // add this line                                 
  name: "openshift-migration"


bash-4.4$ curl  http://mig-controller-metrics.openshift-migration.svc.cluster.local:2112/metrics
# HELP cam_app_workload_migrations Count of MigMigrations sorted by status and type
# TYPE cam_app_workload_migrations gauge
cam_app_workload_migrations{status="completed",type="final"} 1
cam_app_workload_migrations{status="completed",type="stage"} 0
cam_app_workload_migrations{status="failed",type="final"} 0
cam_app_workload_migrations{status="failed",type="stage"} 0
cam_app_workload_migrations{status="idle",type="final"} 0
cam_app_workload_migrations{status="idle",type="stage"} 0
cam_app_workload_migrations{status="running",type="final"} 0
cam_app_workload_migrations{status="running",type="stage"} 0

open "monitoring/metrics" page in OCP UI,  query the metric "cam_app_workload_migrations" from the prometheus UI inside of OpenShift, can get the migration information from UI.