Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/openstatusHQ/sdk-python. Official Python SDK for openstatus
Something went wrong. Try again.
1.2 kB · 39 lines
Python
at main
12345678910111213141516171819202122232425262728293031323334353637383940"""Async equivalent of `examples/basic.py`.
Run with:
uv run python examples/basic_async.py"""
from __future__ import annotations
import asyncioimport os
from openstatus import AsyncOpenstatusClientfrom openstatus._gen.openstatus.health.v1.health_pb2 import CheckRequestfrom openstatus._gen.openstatus.monitor.v1.service_pb2 import ListMonitorsRequest
async def main() -> None: print("OpenStatus SDK Example (async)\n")
async with AsyncOpenstatusClient() as client: print("1. Checking API health...") health = await client.health.v1.HealthService.check(CheckRequest()) print(f" Status: {health.status}\n")
if not os.environ.get("OPENSTATUS_API_KEY"): print("2. Skipping monitor operations (OPENSTATUS_API_KEY not set)") return
print("2. Listing monitors...") monitors = await client.monitor.v1.MonitorService.list_monitors(ListMonitorsRequest()) print(f" Found {monitors.total_size} monitors") print(f" - HTTP: {len(monitors.http_monitors)}") print(f" - TCP: {len(monitors.tcp_monitors)}") print(f" - DNS: {len(monitors.dns_monitors)}")
if __name__ == "__main__": asyncio.run(main())