A DiagnosticContext provides the entry point for recording Diagnostics. See infra.DiagnosticContext for more details. Examples: Step 1: Create a set of rules. >>> # xdoctest: +REQUIRES(module:torch._C._distributed_c10d) >>> rules = infra.RuleCollection.custom_collection_from_list( ... "CustomRuleCollection", ... [ ... infra.Rule( ... id="r1", ... name="rule-1", ... message_default_template="Mising xxx", ... ), ... ], ... ) Step 2: Create a diagnostic engine. >>> engine = DiagnosticEngine() Step 3: Start a new diagnostic context. >>> with engine.create_diagnostic_context("torch.onnx.export", version="1.0") as context: ... ... Step 4: Add diagnostics in your code. ... context.diagnose(rules.rule1, infra.Level.ERROR) Step 5: Afterwards, get the SARIF log. >>> sarif_log = engine.sarif_log() z