LINUX.ORG.RU

а есть journald-shim?

 , ,


0

1

существует ли stand-alone реализация API journald (раздел Native Messages здесь) поверх нормального syslog? если нет, я намереваюсь написать её самостоятельно.

просто я тут поискал на гитхабе и оказалось, что этот API уже используется во многих программах, причём не только в школьных поделках с первой страницы, но и в достаточно популярных свободных проектах (и даже в PackageKit!). безмозглым хипстерам, видите ли, насрать, что syslog — это реальный стандарт IETF, проверенный годами, а journald — ничем не обеспеченная наколенная поделка, API которой нигде не зафиксировано и которое могут в любой момент сломать по желанию левой пятки разработчиков (Поттеринг и сотоварищи вообще обожают менять API, не оставляя обратной совместимости, причём не потому, что на то есть реальные причины, а просто ради изменений) — им бы лишь новые модные технологии подавай, да почаще всё ломай, чтобы код переписывать пришлось.
</butthurt>

inb4: сам journald в режиме ForwardToSyslog не катит, потому что он не работает без systemd.


если нет, я намереваюсь написать её самостоятельно.

А зачем? Так ты помогаешь гогну растекаться по планете. Если не хочешь чтобы всё со временем стало systemd-only, то вместо написания прослоек совместимости нужно заставлять разработчиков сервисов поддерживать традиционный syslogd интерфейс нативно.

mashina ★★★★★
()

Поттеринг и сотоварищи вообще обожают менять API, не оставляя обратной совместимости, причём не потому, что на то есть реальные причины, а просто ради изменений

Врёшь.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

прецеденты были. одно переименование сетевых интерфейсов чего стоит (это не совсем API, но всё же).

Lincor
() автор топика
Ответ на: комментарий от mashina

А зачем?

да хотя бы чтоб PackageKit работал.

вместо написания прослоек совместимости нужно заставлять разработчиков сервисов поддерживать традиционный syslogd интерфейс нативно

каким образом, интересно? бить разработчиков по рукам я не уполномочен.
и да, самое страшное, что PackageKit это не сервис.

Lincor
() автор топика
Последнее исправление: Lincor (всего исправлений: 1)
Ответ на: комментарий от Lincor

да хотя бы чтоб PackageKit работал.

А разве PackageKit не нужно закопать в одной могиле с systemd?

Khnazile ★★★★★
()
Последнее исправление: Khnazile (всего исправлений: 1)
Ответ на: комментарий от Lincor

Во-первых, это действительно не API (никто не обещал стабильности схемы именования).

Во-вторых, это легко отключаемо.

В-третьих, «реальные причины» очень даже есть: гарантия повторяемости имён интерфейсов без необходимости хранить на диске какое-либо состояние.

Ещё примеры «изменений ради изменений»?

intelfx ★★★★★
()
Ответ на: комментарий от Lincor

переименование сетевых интерфейсов

Я, конечно, понимаю, что сейчас модно валить на systemd все вплоть до ухудшения погоды, но здесь-то он причем?

dexpl ★★★★★
()
Ответ на: комментарий от Lincor

http://linux.dell.com/files/biosdevname/ и http://marc.info/?l=linux-hotplug&m=128892593821639&w=2 было очень задолго до того, как кодовая база udev была включена в systemd. К слову, ни в шестой центоси, ни в SystemRescueCD нету systemd, а сетевые интерфейсы по умолчанию именуются как BIOS на душу положит.

dexpl ★★★★★
()
Ответ на: комментарий от intelfx

да сколько угодно.
http://upstream.rosalinux.ru/compat_reports/systemd/208_to_215/abi_compat_rep... — удалили кучу констант. что мешало перестать использовать их, но оставить в целях совместимости — непонятно.
http://upstream.rosalinux.ru/compat_reports/systemd/208_to_215/abi_compat_rep... (в то время gudev был частью systemd) — тупо вырезали целую функцию. ну это вообще пушка. если погуглить, можно даже узнать, что кое-какой софт из-за этого реально отвалился.
http://upstream.rosalinux.ru/compat_reports/systemd/216_to_217/abi_compat_rep... — просто взяли и поменяли версию двух символов. это не затрагивает API, конечно, но поломка ABI библиотеки ничем не лучше.
и т.д., и т.п. поищи сам.

и да, возможно, в этом была необходимость. дело не в том, нужны эти изменения или нет, дело в том, что на обратную совместимость разработчикам systemd насрать.

Lincor
() автор топика
Ответ на: комментарий от dexpl

... а сетевые интерфейсы по умолчанию именуются как BIOS на душу положит.

Ну это некоторая рукопопасть определённых дистрибутивов. Вот, например, в генте такой проблемы не было, была привязка к MACу сетевушки после первого запуска, можно было свободно двигать карточку по слотам без перехерачивания конфигов.

mashina ★★★★★
()

sd_journal_print

Почему бы просто не продолжать использовать syslog(3)? Что дает этот Native Messages кроме указания места вызова в коде? А изменение полей в журнале никому не нужно.

Unicode4all ★★★★★
()
Последнее исправление: Unicode4all (всего исправлений: 1)
Ответ на: комментарий от mashina

Ну это некоторая рукопопасть определённых дистрибутивов

Дело не в том, как и почему (тебе нравится считать это «рукопопастью» — OK), а в том, что к инициативе по переименованию сетевых интерфейсов systemd никакого отношения не имеет.

dexpl ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.