code: public void sendNotification(final Notification notification) {
  
      ContextAwareTimer.Context timer = this.notificationTimer.time();
      if(!this.notificationTargets.isEmpty()) {
          for (final Map.Entry<UUID, Function<Notification, Void>> entry : this.notificationTargets.entrySet()) {
            try {
              entry.getValue().apply(notification);
            } catch (RuntimeException exception) {
              LOG.warn("RuntimeException when running notification target. Skipping.", exception);
            }
          }
      }
  
      if(getParent().isPresent()) {
        getParent().get().sendNotification(notification);
      }
      timer.stop();
    }
docs: Send a notification to all targets of this context and to the parent of this context.
  @param notification {@link org.apache.gobblin.metrics.notification.Notification} to send.