Что такое сообщение об ошибке: spdlog::spdlog_ex

Я знаю, что это очень конкретный вопрос. Тем не менее, возможно, это может помочь:

Сегодня я пытался скомпилировать открытый код. (всем, кому интересно, это тот.) Сообщение об ошибке, описанное ниже, появляется послеoai_hss -j $PREFIX/hss_rel14.json --onlyloadkey- следуя пошаговой инструкции по установке до этого момента. После ввода вышеупомянутой команды в моем терминале выдается следующая ошибка:

terminate called after throwing an instance of 'spdlog::spdlog_ex'
what(): Failed opening file logs/hss.log for writing: No such file or directory
Aborted (core dumped)

Хорошо, это звучит довольно серьезно (ядро сброшено). Я искал в Google значение этого сообщения об ошибке. Я наткнулся на этот другой проект на github. По-видимому, класс spdlog пытается включить ведение журнала из любого места, где я запускаю свою программу. И он выдает ошибку spdlog_ex всякий раз, когда файл, который он пытается добавить в реестр (в данном случае logs / hss.log), уже существует в этом реестре. Думаю, решением моей проблемы было бы найти этот реестр и удалить logs / hss.log. Имеет ли это смысл?

Вопрос: Где, черт возьми, найти этот реестр?

Возможно, будут полезны некоторые базовые знания: я пытаюсь скомпилировать открытый исходный код в виртуальной машине, на которой работает Ubuntu 18.04.3 LTS bionic с общим ядром 4.15.0-66. Я уже искал в каталоге /tmp папку журнала. Здесь ничего нет. Где еще это могло быть?

1 ответ

Открыть этот файл

sudo nano /usr/local/etc/oai/hss_rel14.json

вы увидите некоторую конфигурацию, в которой вы можете найти журналы / hss.log

на самом деле вам нужно изменить эти 4 значения на

logname: "/var/log/hss.log"
statlogname: "/var/log/hss_stat.log"
auditlogname: "/var/log/hss_audit.log"
ossfile: "~/openair-cn/etc/oss.json"

затем используйте sudo touch для создания этих файлов

sudo touch /var/log/hss.log
sudo touch /var/log/hss_stat.log
sudo touch /var/log/hss_audit.log

для logname, statlogname и auditlogname вы можете изменить его на любой файл, который хотите, но я предпочитаю помещать их вместе в папку / var / log. для ossfile там находится oss.json. надеюсь, что это поможет

Другие вопросы по тегам