Closed maxpostal closed 1 year ago
Тут валится сам демон (yandex-disk). Это - утилита компании яндекс и с проблемами по ней нужно писать в поддержку яндекса.
У меня тоже воспроизводится эта проблема. Лог идентичный. Но почему индикатор не виден? По-идее, он должен оставаться в status bar и указывать на проблему с сервисом.
Индикатор возможно и остается, но там иконка неактивности (которую бывает трудно разглядеть), а не ошибки.
Собственно мне не очень ясно как обрабатывать ситуацию, когда запущенный yandex-disk валится с такими дампами.
Сейчас индикатор ждет разумного ответа от yansex-disk status
и пытается распарсить его ответ.
Но вот когда он падает - в ответе (в stdout) пусто, а то что сыпется в логи и stderr не интерпретируется. Поэтому
имеем:
2022-11-25 09:16:49,093 INFO Status: unknown -> none
Что говорит о том, что индикатор показывает иконку неактивности, но не ошибки.
Собственно можно попытаться эту ситуацию воспроизвести (тестирую я все равно на эмуляторе, который я могу заставить делать все что угодно) и приделать к такому безобразному поведению yanedx-disk переход в состояние ошибки. До только вот я не считаю что такое безобразие:
Индикатор вызывает yandex-disk с ограниченным числом команд (start, stop, но значитльно чаще status). Так вот все это заточено (и я считаю это логичным) на нормально работающий yandex-disk.
Я посмотрю на обработку статусов - может и не трудно там такое сделать как вы предлагаете. Но для этого я попрошу мне помочь.
Запустите (не чиня yandex-disk)
yandex-disk status 1>out.log 2>err.log
и
yandex-disk start 1>out1.log 2>err1.log
и пришлите сюда все 4 файлика out.log, err.log, out1.log, err1.log.
На основе этого можно будет понять как правильно обработать такую ситуацию как ошибку.
@slytomcat Использовал workaround (перезагрузка) для исправления root cause, поэтому пока не могу собрать логи. Сделаю, как только воспроизведётся. Хотя логи были максимально похожими на те, что описаны в оригинале. Мне кажется, данных достаточно ;)
Сделал обработку ошибки старта. Можно пробовать из матсера.
Describe what happened with indicator Не запускается автоматически демон Yandex.Disk. Иногда его удается запустить вручную с 10-й попытки. Какую-то закономерность найти не могу.
Describe steps to recreate the issue
Make debugging log:
yandex-disk-indicator -l10
yandex-disk status
Error: daemon not started
Describe your OS (distribution, version, desktop environment) Ubuntu 22.10