Chuyển đến nội dung

Mẫu Log

Một luồng dữ liệu trực tiếp gồm tối đa 20 dòng mới nhất xếp trước, mỗi dòng kèm dấu thời gian và mức độ nghiêm trọng tùy chọn. Máy chủ lưu giữ một kho lịch sử có thể cuộn lại mà bạn có thể tải về trong ứng dụng, trong khi Live Activity luôn hiển thị các dòng gần đây nhất.

Trình diễn Live Activity

Fields

FieldTypeDescription
templatestringRequired. Must be "log"
linesarrayRequired. 1–20 line objects, newest first (see below)
titlestringLog heading shown above the feed
statestringStatus text shown beside the title (e.g. the source name)
iconstringSF Symbol name (e.g. "doc.text") or MDI icon with mdi: prefix
accent_colorstringNamed color or hex used for the heading icon. Default: blue
background_colorstringBackground color override
text_colorstringText color override

Line object

Each entry in lines is an object:

FieldTypeDescription
textstringRequired. The log message. Max 512 characters
atintegerUnix timestamp (seconds) shown as the line's time
levelstringOne of info, warn, error — tints the line and its marker
Thông tin

Send the newest line first, up to 20 lines per push. To stream a feed, prepend the new line and re-send the array. The Live Activity always shows the most recent lines that fit the ~4 KB APNs payload.

💡 Mẹo

The server keeps a rolling scroll-back backlog beyond what fits on screen. The PushWard app fetches it with GET /activities/{slug}?include=log_backlog to show full history in-app — the field is read-only and never needs to be sent.

Example: Streaming Deploy Log

Log triển khai trực tiếp
{
  "state": "ongoing",
  "content": {
    "template": "log",
    "title": "Deploy Log",
    "state": "pushward-server",
    "icon": "doc.text",
    "accent_color": "purple",
    "lines": [
      { "text": "Rollout complete — 3/3 pods healthy", "at": 1718990000, "level": "info" },
      { "text": "Image pull slow on node arm-2", "at": 1718989950, "level": "warn" },
      { "text": "Applied manifest revision d86246c", "at": 1718989930, "level": "info" },
      { "text": "Sync started by webhook", "at": 1718989900, "level": "info" }
    ]
  }
}

Typical Flow

  1. Start the feed (ended -> ongoing): Send the first batch of lines, newest first
  2. Append events (ongoing -> ongoing): Prepend each new line and re-send lines — older lines roll into the backlog
  3. Finish (ongoing -> ended): Send a closing line, then end the activity

Use Cases

  • CI/CD — live deploy and pipeline logs
  • Home automation — event feeds (motion, doors, presence)
  • Monitoring — rolling alert and incident streams
  • Self-hosting — download/import progress, backup steps, sync activity