# HELP dywatch_users Configured or known accounts. # TYPE dywatch_users gauge dywatch_users 3 # HELP dywatch_accounts Accounts by status bucket (see the panel's legend). # TYPE dywatch_accounts gauge dywatch_accounts{status="green"} 0 dywatch_accounts{status="red"} 0 dywatch_accounts{status="amber"} 3 dywatch_accounts{status="blue"} 0 dywatch_accounts{status="off"} 0 # HELP dywatch_never_seen_accounts Accounts that never returned a post. # TYPE dywatch_never_seen_accounts gauge dywatch_never_seen_accounts 0 # HELP dywatch_known_posts Posts currently tracked per account. # TYPE dywatch_known_posts gauge dywatch_known_posts{author="MS4wLjABAAAAbMuesG2mD_6W7wIdEEnsEA3x5oRtS7aNXoEJW3QDb0GeYNNGDtcyBwyxTxt8gu_z|ζωευώ"} 5 dywatch_known_posts{author="MS4wLjABAAAA4MjTvxSsNOjHfi9kfyRdu0KMKRHA1dPNv1WQQwW0OKY|阿Z想开了"} 18 dywatch_known_posts{author="MS4wLjABAAAAL6z-C5MVaIclPFu9sugIIc3-NlH6v0V4uPu_Xtvte4M|阿直"} 15 # HELP dywatch_account_failures Consecutive fetch failures per account. # TYPE dywatch_account_failures gauge dywatch_account_failures{author="MS4wLjABAAAAbMuesG2mD_6W7wIdEEnsEA3x5oRtS7aNXoEJW3QDb0GeYNNGDtcyBwyxTxt8gu_z|ζωευώ"} 0 dywatch_account_failures{author="MS4wLjABAAAA4MjTvxSsNOjHfi9kfyRdu0KMKRHA1dPNv1WQQwW0OKY|阿Z想开了"} 0 dywatch_account_failures{author="MS4wLjABAAAAL6z-C5MVaIclPFu9sugIIc3-NlH6v0V4uPu_Xtvte4M|阿直"} 0 # HELP dywatch_rounds_total Rounds this process has completed (resets on restart). # TYPE dywatch_rounds_total counter dywatch_rounds_total 18261 # HELP dywatch_rounds_recorded_total Rounds ever recorded in the state DB (survives restarts, and is not truncated by ROUNDS_KEEP_DAYS). # TYPE dywatch_rounds_recorded_total counter dywatch_rounds_recorded_total 86206 # HELP dywatch_gate_open 1 when the global gate is open. # TYPE dywatch_gate_open gauge dywatch_gate_open 1 # HELP dywatch_gate_retry_after_capped_total Times an upstream retry_after exceeded the configured ceiling and was capped. # TYPE dywatch_gate_retry_after_capped_total counter dywatch_gate_retry_after_capped_total 0 # HELP dywatch_self_check_ok 1 when the monitor's own resources are fine (see self_check reasons in status.json). # TYPE dywatch_self_check_ok gauge dywatch_self_check_ok 1 # HELP dywatch_self_check_free_mb Free megabytes on the filesystem holding the data directory. # TYPE dywatch_self_check_free_mb gauge dywatch_self_check_free_mb 1272 # HELP dywatch_upstream_ok 1 when the last upstream system/status read succeeded (stale values are kept when it fails). # TYPE dywatch_upstream_ok gauge dywatch_upstream_ok 1 # HELP dywatch_upstream_checked_timestamp_seconds Unix time of the last upstream system/status read. # TYPE dywatch_upstream_checked_timestamp_seconds gauge dywatch_upstream_checked_timestamp_seconds 1793607651.410951 # HELP dywatch_upstream_uptime_seconds Uptime reported by the upstream. # TYPE dywatch_upstream_uptime_seconds gauge dywatch_upstream_uptime_seconds 785086 # HELP dywatch_upstream_component_ok 1/0 per upstream component; absent when the upstream reports unknown. # TYPE dywatch_upstream_component_ok gauge dywatch_upstream_component_ok{component="postgres"} 1 dywatch_upstream_component_ok{component="redis"} 1 dywatch_upstream_component_ok{component="browser_rpc"} 0 dywatch_upstream_component_ok{component="downloader"} 1 # HELP dywatch_upstream_component_latency_ms Reported latency per upstream component. # TYPE dywatch_upstream_component_latency_ms gauge dywatch_upstream_component_latency_ms{component="postgres"} 13 dywatch_upstream_component_latency_ms{component="redis"} 2 dywatch_upstream_component_latency_ms{component="downloader"} 165 # HELP dywatch_upstream_pool_identities Identity pool census, by platform and state. # TYPE dywatch_upstream_pool_identities gauge dywatch_upstream_pool_identities{platform="douyin",state="minting"} 0 dywatch_upstream_pool_identities{platform="douyin",state="active"} 14 dywatch_upstream_pool_identities{platform="douyin",state="cooling"} 0 dywatch_upstream_pool_identities{platform="douyin",state="degraded"} 0 dywatch_upstream_pool_identities{platform="douyin",state="retired"} 19 dywatch_upstream_pool_identities{platform="tiktok",state="minting"} 0 dywatch_upstream_pool_identities{platform="tiktok",state="active"} 0 dywatch_upstream_pool_identities{platform="tiktok",state="cooling"} 0 dywatch_upstream_pool_identities{platform="tiktok",state="degraded"} 0 dywatch_upstream_pool_identities{platform="tiktok",state="retired"} 0 dywatch_upstream_pool_identities{platform="bilibili",state="minting"} 0 dywatch_upstream_pool_identities{platform="bilibili",state="active"} 11 dywatch_upstream_pool_identities{platform="bilibili",state="cooling"} 0 dywatch_upstream_pool_identities{platform="bilibili",state="degraded"} 0 dywatch_upstream_pool_identities{platform="bilibili",state="retired"} 0 # HELP dywatch_upstream_pool_active Identities usable right now (upstream's pool.total_active). # TYPE dywatch_upstream_pool_active gauge dywatch_upstream_pool_active 25 # HELP dywatch_upstream_storage_db_bytes Upstream database size. # TYPE dywatch_upstream_storage_db_bytes gauge dywatch_upstream_storage_db_bytes 324499123 # HELP dywatch_upstream_storage_identities Identities stored by the upstream. # TYPE dywatch_upstream_storage_identities gauge dywatch_upstream_storage_identities 44 # HELP dywatch_archive_pending Archive downloads queued but not sent yet (0 when the side path is off). # TYPE dywatch_archive_pending gauge dywatch_archive_pending 0 # HELP dywatch_archive_muted 1 when archive downloads are paused by capacity backoff. # TYPE dywatch_archive_muted gauge dywatch_archive_muted 0 # HELP dywatch_notify_channels Notification channels configured. # TYPE dywatch_notify_channels gauge dywatch_notify_channels 1 # HELP dywatch_notify_silent 1 when SILENT_MODE skips every push. # TYPE dywatch_notify_silent gauge dywatch_notify_silent 0 # HELP dywatch_feature_enabled 1 when a feature is switched on. # TYPE dywatch_feature_enabled gauge dywatch_feature_enabled{name="metrics"} 1 dywatch_feature_enabled{name="hidden_check"} 1 dywatch_feature_enabled{name="archive_download"} 0 # HELP dywatch_state_readable 1 when the state DB answered a query. # TYPE dywatch_state_readable gauge dywatch_state_readable 1 # HELP dywatch_state_rows Rows stored in the state DB, by table. # TYPE dywatch_state_rows gauge dywatch_state_rows{table="authors"} 3 dywatch_state_rows{table="posts"} 38 dywatch_state_rows{table="tombstones"} 0 dywatch_state_rows{table="events"} 6 # HELP dywatch_events_recent Events stored within EVENTS_KEEP_DAYS (30 days), by kind. # TYPE dywatch_events_recent gauge dywatch_events_recent{kind="hidden_from_guest"} 2 dywatch_events_recent{kind="post_removed"} 1 dywatch_events_recent{kind="revived"} 1 dywatch_events_recent{kind="stale_no_update"} 1 dywatch_events_recent{kind="upstream_degraded"} 1 # HELP dywatch_post_metrics_rows Engagement snapshot rows stored (hourly buckets). # TYPE dywatch_post_metrics_rows gauge dywatch_post_metrics_rows 9567 # HELP dywatch_post_metrics_posts Distinct posts with at least one engagement snapshot. # TYPE dywatch_post_metrics_posts gauge dywatch_post_metrics_posts 38