Отчёт EyeAuras — это архив с описанием проблемы, диагностическими данными и выбранными вложениями. Мини-приложения на базе EyeAuras используют ту же систему сбора отчётов.
Пользователь может отправить отчёт в поддержку EyeAuras или сохранить архив и передать его автору шары напрямую. Авторы уже могут принимать такие архивы. API для получения отчётов авторами планируется, но пока недоступен.
Отправка в EyeAuras не означает автоматическую доставку всем авторам из списка подписок. Если автор попросил архив, сохраните его и передайте этот файл.
При сохранении и отправке используется один подготовленный снимок диагностических данных. Смена аккаунта или подписок после открытия окна не обновляет этот снимок.
| Файл | Содержимое и условия включения |
|---|---|
comment.txt |
Итоговый комментарий, если он не пустой. |
systemInfo.txt |
Сведения о системе и процессе, включая версию ОС, имя пользователя Windows, имя компьютера, пути и командную строку. Включается автоматически, если удалось собрать. |
applicationInfo.txt |
Приложение, отправитель, лицензия, запуск, статистика дерева и подписки. В текущих клиентах EyeAuras включается обязательно, независимо от выбора логов и конфигурации аур. В старых версиях может отсутствовать. |
stacktrace.txt |
Сведения об исключении; обычно выбраны, если доступны. У отчёта, открытого вручную, исключения может не быть. |
.log приложения |
Выбранные логи. Недавние файлы выбраны по умолчанию; более ранние запуски можно выбрать в окне отчёта. |
EventLog_*.log, metrics.txt и другие диагностические файлы |
События Windows, показатели производительности и другие данные, доступные в конкретном приложении. |
Wnd *.png / Screen *.png |
Скриншоты окон приложения и рабочего стола. Доступные скриншоты окон выбраны по умолчанию; скриншоты рабочего стола — нет. |
Auras.zip, файлы конфигурации |
Выбранные вложения с деревом аур и настройками. По умолчанию не выбраны. |
В окне можно выбирать необязательные вложения. Обязательные диагностические файлы включаются автоматически. Перед передачей проверьте содержимое: командная строка, текст запуска, логи, скриншоты и выбранная конфигурация могут содержать локальные пути или данные из ваших скриптов.
applicationInfo.txt содержит локально доступное состояние на момент подготовки отчёта. Сбор данных не выполняет вход, не обновляет лицензию или подписки и не обращается к серверу.
| Ключи | Что означают |
|---|---|
CapturedAtUtc, App.* |
Время снимка, фактическое имя, версия и профиль приложения, готовность и время работы. |
User.Id, User.Name |
Отправитель из локального снимка активной лицензии. Это отдельные данные от владельцев шар. |
User.License.* |
Тип лицензии, валидность, доступные даты начала и окончания, названия возможностей. Этот блок не содержит ключ лицензии или полную подписанную лицензию. |
Startup.CommandLine, Startup.Config |
Исходная командная строка процесса и текст startup.cfg выбранного профиля на момент сбора. Исходный текст сохраняется, даже если парсер запуска не может его прочитать. |
Startup.Parsed.* |
Доступные фактические настройки запуска — режимы EyePad, окна и готовности, флаги безопасного режима и режима только чтения, параметры input/run/eval/compile/output. |
Tree.* |
Количество папок, аур, деревьев поведения и включённых элементов. Макросы входят в деревья поведения. Текстового дерева и списка имён нет; для этого приложите конфигурацию аур. |
Subscriptions.Count, Subscriptions.N.* |
ID и путь папки, тип подписки, ID шары, доступные ревизия, название, владелец и URI, признак локального клона. Каждая подписка или клон занимает отдельную строку. |
UnavailableSections.* |
Разделы, которые не удалось собрать. Остальные доступные данные сохраняются. |
Текст startup.cfg читается при подготовке отчёта и может отличаться от файла, использованного при запуске. Данные отправителя и лицензии служат для диагностики и не подтверждают авторизацию. Наличие шары в отчёте не доказывает, что именно она вызвала ошибку.
Файл записан в UTF-8, каждая строка имеет вид Key=Value. Разделяйте строку по первому =. Регистр ключей важен. Неизвестные ключи и пустые строки можно пропускать; порядок ключей не гарантируется.
В значениях обратный слеш записывается как \\, возврат каретки — \r, новая строка — \n, табуляция — \t. Декодируйте один раз, слева направо, без повторных замен. Знаки равенства и кавычки остаются обычными символами. Булевы значения — true/false, числа записаны независимо от локали, даты — в ISO 8601 UTC.
Version=1 соответствует IPoeEyeConfigVersioned.Version и обозначает границу несовместимого формата. Добавление ключа не меняет эту версию. App.Version — версия самого приложения. Центральный обработчик сейчас поддерживает версию 1. Отсутствующий, нечитаемый или неподдерживаемый контекст не мешает обработке основного отчёта; исходный архив сохраняется.
Неизвестные значения пропускаются. Доступная пустая строка записывается как Key=, пустая коллекция — как Prefix.Count=0. У недоступной коллекции нет счётчика. Индексы коллекций начинаются с нуля.
Имена и ID условные; ниже сокращённый снимок:
Version=1
CapturedAtUtc=2026-10-11T10:15:30.0000000Z
App.Name=DemoMiniApp
App.Version=1.9.10047.0
App.Profile=release
App.IsLoaded=true
App.UptimeSeconds=125
User.Id=8b8fae9e-1c40-4b37-bbc7-c9728c12db34
User.Name=Alice
User.License.Type=Standard
User.License.IsValid=true
User.License.Features.Count=2
User.License.Features.0=EyeAuras.DefaultAuras
User.License.Features.1=EyeAuras.Social
Startup.CommandLine=DemoMiniApp.exe --profile release
Startup.Config={"CommandLine":"--profile release"}\r\n
Startup.Parsed.IsEyePad=true
Tree.TotalItems=7
Tree.Folders=3
Tree.Auras=3
Tree.BehaviorTrees=1
Tree.EnabledItems=6
Subscriptions.Count=2
Subscriptions.0.FolderPath=DemoMiniApp
Subscriptions.0.SubscriptionType=ShareAuraSubscriptionConfig
Subscriptions.0.ShareId=demo-share-one
Subscriptions.0.Revision=12
Subscriptions.0.OwnerUserName=AuthorOne
Subscriptions.0.IsLocalClone=false
Subscriptions.1.FolderPath=Helpers
Subscriptions.1.SubscriptionType=ShareAuraSubscriptionConfig
Subscriptions.1.ShareId=demo-share-two
Subscriptions.1.OwnerUserName=AuthorTwo
Subscriptions.1.IsLocalClone=true
UnavailableSections.Count=0
Попросите пользователя сохранить отчёт и передать исходный архив с кратким описанием действий для воспроизведения. Одного скриншота окна отчёта обычно недостаточно для диагностики.
Имя по умолчанию имеет вид AppName_version_profile_reportId.7z, например:
DemoMiniApp_1.9.10047.0_release_0123456789abcdef0123456789abcdef.7z
Имя приложения может содержать подчёркивания. При регистрации обращения сохраняйте исходное имя файла и ID отчёта. Сервер EyeAuras также распознаёт .zip с той же схемой имени.
comment.txt и доступный stacktrace.txt, чтобы понять проблему и исключение.applicationInfo.txt: проверьте приложение, версию, профиль, отправителя, параметры запуска и нужную ревизию шары. Если шар или клонов несколько, используйте весь список подписок.Если applicationInfo.txt нет, используйте комментарий, сведения о системе и логи. Старые отчёты остаются пригодными для диагностики. Отсутствующие сведения о пользователе, шаре или лицензии не нужно заполнять догадками.
Для отчётов EyeAuras обработчик сначала использует непустой User.Name, сохраняя прежний поиск имени в сведениях о системе и логах. При наличии данных в YouTrack заполняются строковые поля:
| Поле | Источник |
|---|---|
External Id |
ID отчёта из имени архива; используется для поиска дублей в целевом проекте. |
External UserName |
Имя отправителя с прежним запасным способом извлечения. |
External AppName |
App.Name. |
External UserId |
User.Id. |
External ShareId |
Первая подписка с непустым ShareId в порядке файла. |
External OwnerUserName |
Канонический владелец первой шары и её ревизии на сервере, если удалось определить. |
Все подписки и клоны остаются в описании и исходном файле. Индексируется только выбранная первая шара; последующие не подставляются вместо неё или её владельца. OwnerUserName из клиентского файла — локальная подсказка, а не каноническое имя с сервера. Если ревизия не указана, используется активная серверная; недоступная явно указанная ревизия не заменяется на активную.
Лицензия, возможности, статистика дерева и параметры запуска попадают в описание, а не в отдельные поисковые поля. Исходный архив прикладывается к задаче. Дедупликация работает по проекту и точному ID отчёта независимо от состояния задачи.
Отчёты EyeAuras и мини-приложений сейчас попадают в проект EyeAuras. У PoEBane отдельный обработчик со своим целевым проектом, по умолчанию POE. Если его импорт отключён, архивы PoEBane_ пропускаются и не переходят в общий обработчик EyeAuras. Общая маршрутизация по автору или шаре и API для получения отчётов авторами планируются. Принимать сохранённые архивы вручную можно уже сейчас.