code: func RecordNodeStatusChange(recorder record.EventRecorder, node *v1.Node, newStatus string) {
  	ref := &v1.ObjectReference{
  		Kind:      "Node",
  		Name:      node.Name,
  		UID:       node.UID,
  		Namespace: "",
  	}
  	klog.V(2).Infof("Recording status change %s event message for node %s", newStatus, node.Name)
  	// TODO: This requires a transaction, either both node status is updated
  	// and event is recorded or neither should happen, see issue #6055.
  	recorder.Eventf(ref, v1.EventTypeNormal, newStatus, "Node %s status is now: %s", node.Name, newStatus)
  }
docs: // RecordNodeStatusChange records a event related to a node status change. (Common to lifecycle and ipam)