콘텐츠로 이동

HTML & Markdown 리포터

실무 운영 가이드에서 HTML, Reporters, Markdown을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

Profile과 Validation은 전달된 Core 결과에 별도 공개 통계 필터를 적용하지 않습니다. 호스팅 애플리케이션은 renderer 외부에서 접근 권한을 제어하며 공개 여부에 따라 리포트 내용을 변경하지 않습니다. 해당 renderer가 지원하는 Core 리포트 테마를 제공합니다. 3.1.14부터 SVG Profile renderer는 표·차트 글자에 선택한 테마의 전경색을 적용하며, 상위 값 빈도를 백분율이 아닌 실제 건수로 표시합니다. Profile 컬럼명·차트 label·패턴·권고·알림은 텍스트로 escape하고, 대화형 차트 JSON이 주변 script 태그를 닫지 못하게 합니다. 입력과 표시할 원문은 보존하며 데이터를 제거하지 않습니다.

3.1.14 renderer는 표의 실제 검사명과 실행 재시도 수를 보존합니다. 검사명은 HTML로 실행하지 않고 텍스트로 escape합니다. 3.1.14 결과 모델은 issue 상세가 없거나 가려져 있어도 명시적으로 실패한 check를 실패로 보존하며 issue를 만들어내지 않습니다. 설치된 패키지가 3.1.14 이상인지 확인해야 합니다. Profile과 Validation은 다른 결과 타입을 입력받으므로 같은 테마가 같은 섹션·정보량을 뜻하지 않습니다. 실제 빈 결과는 기존 의미를 유지합니다.

Profile의 표·차트·카드는 inferred_type, physical_type, 구형 dtype 중 비어 있지 않은 첫 문자열을 자료형으로 표시하며, 모두 없으면 unknown을 사용합니다. 명시적으로 전달한 unknown은 그대로 유지합니다. 이는 표기 호환성 규칙으로, 자료형을 추론하거나 입력·품질 계산을 바꾸지 않으며 label은 계속 텍스트로 escape합니다.

PDF의 긴 섹션과 표는 다음 페이지로 이어질 수 있습니다. 장·섹션 제목은 이어지는 내용과 함께 배치하고, 한 페이지에 들어가는 컬럼 카드는 분리하지 않습니다. 긴 컬럼명은 표 셀 안에서 줄바꿈합니다. 인쇄 전용 배치 규칙이며 화면 테마, 원래 값과 리포트 계산은 유지합니다.

상수·단일 행 입력에서 정의되지 않은 왜도·첨도는 JSON null로 직렬화하며, 측정값 0으로 대체하지 않습니다. 유한한 왜도·첨도, 다른 통계와 원본 값은 그대로 유지합니다. 모든 비유한 값을 정제하는 기능은 아닙니다.

HTML Reporter

Basic Usage

from truthound.reporters import get_reporter

reporter = get_reporter("html")
html_output = reporter.render(run_result)

설정 Options

실무 운영 가이드에서 HTML, HTMLReporterConfig, HTMLReporterConfig을(를) 다루는 항목입니다:

실무 운영 가이드에서 Option을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Type을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Default을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Description을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 template을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 관련 설정과 실행 흐름을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 None을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 None, None을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 template_path을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 관련 설정과 실행 흐름을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 None을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 None, None을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 inline_css을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 HTML, Inline, CSS을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 include_js을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Include, JavaScript을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 theme을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 str을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 "light"을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Theme을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 include_charts을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Include을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 responsive을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Responsive을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

사용 예시

Basic HTML 리포트

from truthound.reporters import get_reporter

reporter = get_reporter("html")
html_output = reporter.render(result)

# Save to file
reporter.write(result, "validation_report.html")

Dark Theme

reporter = get_reporter("html", theme="dark")
html_output = reporter.render(result)

Custom Template

custom_template = """
<!DOCTYPE html>
<html>
<head><title>{{ title }}</title></head>
<body>
  <h1>{{ result.data_asset }} Validation</h1>
  <p>Status: {{ result.status }}</p>
  <ul>
  {% for issue in result.issues %}
    <li>{{ issue.validator_name }}: {{ issue.message }}</li>
  {% endfor %}
  </ul>
</body>
</html>
"""

reporter = get_reporter("html", template=custom_template)
html_output = reporter.render(result)

Using Template 파일

reporter = get_reporter("html", template_path="templates/my_report.html")
html_output = reporter.render(result)

Default Template Features

실무 운영 가이드에서 HTML을(를) 다루는 항목입니다:

  1. 실무 운영 가이드에서 Summary, Section, Overall을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
  2. 실무 운영 가이드에서 Severity, Analysis, Donut, ApexCharts을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
  3. Issues 테이블: Sortable/filterable 테이블
  4. 실무 운영 가이드에서 Detail, Information, Detailed을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
  5. 실무 운영 가이드에서 Responsive, Design, Mobile을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

Template Context Variables

실무 운영 가이드에서 Variables을(를) 다루는 항목입니다:

실무 운영 가이드에서 Variable을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Type을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Description을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 result을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 RunPresentation, RunPresentation을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Shared을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 title을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 str을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 리포트 title
실무 운영 가이드에서 timestamp을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 str을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Generation을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 config을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 HTML, HTMLReporterConfig, HTMLReporterConfig을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. Reporter 설정
실무 운영 가이드에서 statistics을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 dict을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Statistics을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

Dependencies

실무 운영 가이드에서 HTML, Reporter, Jinja2을(를) 다루는 항목입니다:

pip install jinja2

실무 운영 가이드에서 관련 설정과 실행 흐름을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

Markdown Reporter

Basic Usage

from truthound.reporters import get_reporter

reporter = get_reporter("markdown")
md_output = reporter.render(run_result)

설정 Options

실무 운영 가이드에서 MarkdownReporterConfig, MarkdownReporterConfig을(를) 다루는 항목입니다:

실무 운영 가이드에서 Option을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Type을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Default을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Description을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 include_toc을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. Include 테이블 of contents
실무 운영 가이드에서 heading_level을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 int을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 1을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Starting을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 include_badges을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Include을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 table_style을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 str을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 "github"을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 테이블 style
실무 운영 가이드에서 include_details을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Include을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 include_statistics을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 True, True을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Include을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

사용 예시

Basic Markdown

from truthound.reporters import get_reporter

reporter = get_reporter("markdown")
md_output = reporter.render(result)

실무 운영 가이드에서 Output을(를) 다루는 항목입니다:

# Validation Report

![Status](https://img.shields.io/badge/Status-FAILED-red)
![Pass Rate](https://img.shields.io/badge/Pass%20Rate-80%25-yellow)

## Summary

| Metric | Value |
|--------|-------|
| Data Asset | customer_data.csv |
| Run ID | abc123-def456 |
| Status | FAILED |
| Total Validators | 10 |
| Passed | 8 |
| Failed | 2 |
| Pass Rate | 80.0% |

## Issues by Severity

| Severity | Count |
|----------|-------|
| Critical | 1 |
| High | 1 |
| Medium | 0 |
| Low | 0 |

## Failed Validations

### NullValidator - email

- **Severity**: critical
- **Count**: 5
- **Message**: Found 5 null values

### RangeValidator - age

- **Severity**: high
- **Count**: 3
- **Message**: 3 values out of range

Disable Badges

reporter = get_reporter("markdown", include_badges=False)

Disable 테이블 of Contents

reporter = get_reporter("markdown", include_toc=False)

Adjust Heading Level

실무 운영 가이드에서 Heading을(를) 다루는 항목입니다:

# Start from h2
reporter = get_reporter("markdown", heading_level=2)

shields.io Badges

실무 운영 가이드에서 include_badges=True, True을(를) 다루는 항목입니다:

  • 실무 운영 가이드에서 Status, Badge, Pass, Fail을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
  • 실무 운영 가이드에서 Pass, Rate, Badge, Color을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
  • 실무 운영 가이드에서 Issues, Badge, Shows을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
![Status](https://img.shields.io/badge/Status-PASSED-green)
![Pass Rate](https://img.shields.io/badge/Pass%20Rate-100%25-brightgreen)
![Issues](https://img.shields.io/badge/Issues-0-brightgreen)

실무 운영 가이드에서 관련 설정과 실행 흐름을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

테이블 Reporter (SDK)

실무 운영 가이드에서 ASCII/Unicode, SDK을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

Basic Usage

from truthound.reporters.sdk import TableReporter

reporter = TableReporter()
table_output = reporter.render(run_result)

설정 Options

실무 운영 가이드에서 TableReporterConfig, TableReporterConfig을(를) 다루는 항목입니다:

실무 운영 가이드에서 Option을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Type을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Default을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Description을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 style을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 str을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 "ascii"을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 테이블 style
실무 운영 가이드에서 include_passed을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 False, False을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. Include passed 검증기
실무 운영 가이드에서 max_column_width을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 int을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 50을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. Maximum 컬럼 width
실무 운영 가이드에서 columns을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 list[str]을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 ["validator", "column", "severity", "message"]을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 컬럼 to display
실무 운영 가이드에서 sort_by을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 관련 설정과 실행 흐름을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 None을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 "severity"을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.
실무 운영 가이드에서 sort_ascending을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 bool을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 False, False을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다. 실무 운영 가이드에서 Ascending을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

테이블 Styles

ASCII (Default)

+------------+--------+----------+---------------------------+
| validator  | column | severity | message                   |
+------------+--------+----------+---------------------------+
| NullValidator | email | critical | Found 5 null values    |
| RangeValidator | age | high     | 3 values out of range  |
+------------+--------+----------+---------------------------+

Markdown

| validator  | column | severity | message                   |
|------------|--------|----------|---------------------------|
| NullValidator | email | critical | Found 5 null values    |
| RangeValidator | age | high     | 3 values out of range  |

Grid (Unicode)

╔════════════╤════════╤══════════╤═══════════════════════════╗
║ validator  │ column │ severity │ message                   ║
╠════════════╪════════╪══════════╪═══════════════════════════╣
║ NullValidator │ email │ critical │ Found 5 null values   ║
║ RangeValidator │ age │ high     │ 3 values out of range ║
╚════════════╧════════╧══════════╧═══════════════════════════╝

Simple

validator       column   severity   message
-----------     ------   --------   ---------------------------
NullValidator   email    critical   Found 5 null values
RangeValidator  age      high       3 values out of range

실무 운영 가이드에서 관련 설정과 실행 흐름을(를) 기준으로 데이터 품질 검증, 워크플로우 자동화, 결과 해석 방법을 설명합니다.

파일 Output

# Save HTML file
html_reporter = get_reporter("html")
html_reporter.write(result, "report.html")

# Save Markdown file
md_reporter = get_reporter("markdown")
md_reporter.write(result, "VALIDATION_REPORT.md")

API 레퍼런스

HTMLReporter

class HTMLReporter(ValidationReporter[HTMLReporterConfig]):
    """HTML format reporter (Jinja2-based)."""

    name = "html"
    file_extension = ".html"
    content_type = "text/html"

    def render(self, data: ValidationRunResult) -> str:
        """Render validation result as HTML."""
        ...

MarkdownReporter

class MarkdownReporter(ValidationReporter[MarkdownReporterConfig]):
    """Markdown format reporter."""

    name = "markdown"
    file_extension = ".md"
    content_type = "text/markdown"

    def render(self, data: ValidationRunResult) -> str:
        """Render validation result as Markdown."""
        ...

TableReporter

class TableReporter(ValidationReporter[TableReporterConfig]):
    """ASCII/Unicode table reporter."""

    name = "table"
    file_extension = ".txt"
    content_type = "text/plain"

    def render(self, data: ValidationRunResult) -> str:
        """Render validation result as table."""
        ...