Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-5233

Create shared adoc fragments for specifying MBean name format in connector metrics sections

XMLWordPrintable

      • In the snapshot and streaming metrics sections of each of the connector docs, we currently use ifeval statements to specify the MBean naming format for the connector.
      • However, the tooling that we use to fetch upstream content for downstream use, is not capable of handling the ifeval conditionals, with the result that multiple versions of each MBean name render in the downstream docs. 
      • In the long run, it might be possible to update the tooling so that it processes the conditionals correctly. However, in the meantime, we need a solution that we can apply for the upcoming downstream release. 
      • The following short-term options were proposed:
        • Move the content out of the shared file and into the files for each connector. 
        • Manually update the downstream files with the correct content after I run the fetch script.
        • Create fragments to specify the possible MBean name formats, and then in the metrics section of each of the connector docs, import the fragment that specifies the appropriate naming format for the connector.

      For now, I'll implement a combination of the first and last options by creating a fragment file that specifies the various fragments that are needed for snapshots and streaming, using tag regions in the file to identify the context in which the naming format is used and then applying an attribute in the include statement to retrieve the format that is appropriate for the context.
      The following list identifies the formats that are required for the different contexts:

      • MongoDB:
        • The MBean is `debezium.{mbean-name}:type=connector-metrics,context=snapshot,server=<{context}.server.name>,task=<task.id>`.
        • The MBean is `debezium.{mbean-name}:type=connector-metrics,context=streaming,server=<{context}.server.name>,task=<task.id>`.
      • SQL Server:
        • The MBean is `debezium.{mbean-name}:type=connector-metrics,server=<{context}.server.name>,task=<task.id>,context=snapshot`.
        • The MBean is `debezium.{mbean-name}:type=connector-metrics,server=<{context}.server.name>,task=<task.id>,context=streaming`.
      • All others:
        • The MBean is `debezium.{mbean-name}:type=connector-metrics,context=snapshot,server=<{context}.server.name>`.
        • The MBean is `debezium.{mbean-name}:type=connector-metrics,context=streaming,server=<{context}.server.name>`.

              broldan@redhat.com Robert Roldan
              broldan@redhat.com Robert Roldan
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: