Cluster · разработчикам
Timer
Измерение длительности блока и запись в журнал. elapsed доступен после выхода.
Все методы SDK · Типы и ошибки
Получение объекта
timer = app.logs.timer("Refresh")__init__
Создаёт Timer. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.
def __init__(logs: LogWriter, message: str) -> None: ...Аргументы
logs: LogWriter, обязательный. app.logs либо связанный Journal.message: str, обязательный. Сообщение журнала. Контекст добавляется как JSON без секретов.
Результат
None. Создаёт Timer. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.
Права
Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.
Ошибки
- Отдельного исключения SDK нет. Действуют обычные ошибки типов Python и ошибки переданных функций, если они используются.
Пример
# Обычный способ получения объекта:
timer = app.logs.timer("Refresh")__aenter__
Вход в async with. Запоминает монотонное время начала.
async def __aenter__() -> Self: ...Аргументы
Нет.
Результат
Self. Тот же объект после успешной операции. Вход в async with. Запоминает монотонное время начала.
Права
Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.
Ошибки
- Отдельного исключения SDK нет. Действуют обычные ошибки типов Python и ошибки переданных функций, если они используются.
Пример
async with timer as active:
pass__aexit__
Выход из async with. Вычисляет elapsed и записывает seconds в журнал; при исключении использует уровень error и error_type. Исключения блока не подавляются.
async def __aexit__(kind: type[BaseException] | None, error: BaseException | None, traceback: TracebackType | None) -> None: ...Аргументы
kind: type[BaseException] | None, обязательный. Тип исключения блока либо None. Передаётся Python автоматически.error: BaseException | None, обязательный. Исключение блока async with либо None; контекстный протокол передаёт автоматически.traceback: TracebackType | None, обязательный. Трассировка исключения контекстного блока; передаётся Python автоматически.
Результат
None. Выход из async with. Вычисляет elapsed и записывает seconds в журнал; при исключении использует уровень error и error_type. Исключения блока не подавляются.
Права
Нужны logs.write.
Ошибки
- Ошибки ядра: AccessDenied при нехватке прав или выходе за ограничения, InvalidInput для неверных параметров, InvalidState для недоступного состояния, QuotaExceeded при превышении лимита, Unavailable при недоступной службе. Остальные коды представлены SDKError; см. TYPES.md. Ошибка канала связи вызывает RuntimeError. Действие с неизвестным результатом нельзя автоматически считать невыполненным.
Пример
async with timer as active:
pass