code: func newAdmissionMetrics() *AdmissionMetrics {
  	// Admission metrics for a step of the admission flow. The entire admission flow is broken down into a series of steps
  	// Each step is identified by a distinct type label value.
  	step := newMetricSet("step",
  		[]string{"type", "operation", "rejected"},
  		"Admission sub-step %s, broken out for each operation and API resource and step type (validate or admit).", true)
  
  	// Built-in admission controller metrics. Each admission controller is identified by name.
  	controller := newMetricSet("controller",
  		[]string{"name", "type", "operation", "rejected"},
  		"Admission controller %s, identified by name and broken out for each operation and API resource and type (validate or admit).", false)
  
  	// Admission webhook metrics. Each webhook is identified by name.
  	webhook := newMetricSet("webhook",
  		[]string{"name", "type", "operation", "rejected"},
  		"Admission webhook %s, identified by name and broken out for each operation and API resource and type (validate or admit).", false)
  
  	step.mustRegister()
  	controller.mustRegister()
  	webhook.mustRegister()
  	return &AdmissionMetrics{step: step, controller: controller, webhook: webhook}
  }
docs: // newAdmissionMetrics create a new AdmissionMetrics, configured with default metric names.