The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Предложение по переводу системных логов lastlog, btmp, utmp и wtmp на использование SQLite"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Предложение по переводу системных логов lastlog, btmp, utmp и wtmp на использование SQLite"  +/
Сообщение от opennews (??), 13-Мрт-26, 08:25 
В списке рассылки linux-api выставлено на обсуждение предложение (RFC) заменить устаревшие бинарные форматы системных журналов lastlog, btmp, utmp и wtmp на новые разделяемые библиотеки, использующие SQLite в качестве бэкенда. Инициатива направлена на решение накопившихся проблем, среди которых переполнение 32-разрядных счётчиков времени в 2038 году, отсутствие расширяемости, низкая производительность запросов и отсутствие атомарности при записи...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=64981

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 13-Мрт-26, 08:25   +1 +/
Чем metakit4 не угодил?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #15, #18

2. Сообщение от User (??), 13-Мрт-26, 08:25   +/
> Автор RFC предлагает полностью отказаться

Так вроде ж и отказались уже - в пользу journald?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #107

3. Сообщение от Аноним (52), 13-Мрт-26, 08:28   +/
"Запись в бинарный файл не является атомарной операцией. При сбое запись может быть частично повреждена."

Так это и к journald относится, разве нет?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #16, #46, #80, #128

6. Сообщение от iCat (ok), 13-Мрт-26, 08:31   –5 +/
Кому-то очень хочется внедрить нечитаемую систему протоколирования из мира Windows в мир GNU/Linux ?
А зачем?
Системды мало?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #9, #11, #28, #36, #121, #146

7. Сообщение от Аноним (9), 13-Мрт-26, 08:31   +6 +/
Хранение логов в тормозлайт худшая идея, какую можно придумать. Ещё это завязывает на стороннего разработчика, который неизвестно что может сделать и с продуктом и со своим форматом. Если они такие любители прокладок пусть пишут новые либы для нового бинарного собственного и если надо расширяемого формата. А не превращают всю систему в один единый тормозящий скуль.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #13, #17, #38, #39, #40

8. Сообщение от Аноним (8), 13-Мрт-26, 08:31   +/
А в чём проблема писать условный protobuf? Быстро, дёшево, достаточно атомарно
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #57

9. Сообщение от Аноним (9), 13-Мрт-26, 08:32   +4 +/
Когда свободу на хлеб, остаются и без свободы и без хлеба.          
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

11. Сообщение от анон (?), 13-Мрт-26, 08:34   +13 +/
Она и сейчас нечитаемая.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

12. Сообщение от Аноним (12), 13-Мрт-26, 08:35   +/
т.е. если все равно переписывать, то они предлагают переписать так, чтобы сразу отсечь кору дуба и embedded системы, вместо того чтобы решить проблему создать новую
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #148

13. Сообщение от Фонтимос (?), 13-Мрт-26, 08:37   +/
Подтверждаю, линукс станет тормозом. Хотя по мне, пучть внедряют, быстрее все слиняют на ФриБиЭсДи.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #30

15. Сообщение от Аноним (15), 13-Мрт-26, 08:42   –1 +/
Написана на C++ - https://ru.wikipedia.org/wiki/MetaKit
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

16. Сообщение от Олег (??), 13-Мрт-26, 08:42   +1 +/
Да не слушай их. Программисты деградируют походу. Если записывать не больше страницы за раз, то вполне себе атомарная. А дальше уже работает журнал ФС. Sqlite хорошая штука, но зачем тащить её сюда,  не понятно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #133

17. Сообщение от User (??), 13-Мрт-26, 08:43   +/
Ну, в доelastic'овскую пору - я вот вполне себе делал центральный rsyslog с хранением в mysql - вполне себе работало.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #29

18. Сообщение от Жироватт (ok), 13-Мрт-26, 08:44   +4 +/
Недостаточно стильно@модно@молодёжно и обновлялась не "в прошлом месяце"
Хотя я не удивлён был бы, если бы туда по решению платинового спонсора предложили запихнуть sql server 2026 localDB
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #20, #21, #52

19. Сообщение от Duck Fiemail (?), 13-Мрт-26, 08:45   –6 +/
Идея неплохая, но мб пора задуматься и унифицировать не только это ?
Почти каждый файл конфигурации и данных имеет свой формат.
Например /etc/passwd,  мб что то по типу yaml применять.
И обязательно сохранить текстовый формат, можно потерпеть скорость, потому что тут она не на что не влияет.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #22, #96

20. Сообщение от Аноним (15), 13-Мрт-26, 08:56   +/
Ну это уже перебор, хватит https://github.com/microsoft/FASTER
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #32

21. Сообщение от Аноним (21), 13-Мрт-26, 08:56   +2 +/
- Для каждого типа журналов создаётся отдельная библиотека
- задействование индексов
- одновременно выполнять запись и в старый бинарный файл, и в новую SQLite-базу

Странная система логирования. Мы точно логи пишем?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #33

22. Сообщение от User (??), 13-Мрт-26, 09:00   +5 +/
Да сделали бы сразу "реестр linux - можно поверх sqlite'а", что ли - чего стесняться-то?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #25, #31, #48

23. Сообщение от Аноним (23), 13-Мрт-26, 09:01   +/
Короче, нельзя поменять то, нельзя поменять сё, потому что совместимость. Тогда давайте все на sqlite переведем, ведь он остается совместимым с тем что было до него.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #49

24. Сообщение от Аноним (21), 13-Мрт-26, 09:02   +2 +/
> Фиксированный размер записей не позволяет добавлять новые поля

А текстовый формат всё позволял.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #37, #61, #149

25. Сообщение от Аноним (21), 13-Мрт-26, 09:03   +1 +/
> можно поверх sqlite'а

sqlite'а обязательно в контейнере

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22 Ответы: #34

26. Сообщение от Аноним (23), 13-Мрт-26, 09:08   +1 +/
> Предоставление fallback-бэкенда, хранящего журналы в упрощённом бинарном формате, для систем, на которых SQLite может оказаться избыточным (например, встраиваемые устройства с жёсткими ограничениями по памяти).

А там что с изначальными ограничениями будет? Если их нет, то почему тогда этот fallback и не использовать везде вместо sqlite?

Ответить | Правка | Наверх | Cообщить модератору

27. Сообщение от Аноним (21), 13-Мрт-26, 09:10   +3 +/
> не позволяет добавлять новые поля (например, идентификатор контейнера, имя сервиса, IP-адрес)
> liblastlog2, libbtmp2, libutmp2 и libwtmp2... возможность добавления новых полей ... (через ALTER TABLE)

Надо так: liblastlog2containerid liblastlog2servicename liblastlog2ipaddress libbtmp2containerid libbtmp2servicename  libbtmp2ipaddress libutmp2containerid libutmp2servicename  libutmp2ipaddress libwtmp2containerid libwtmp2servicename libwtmp2ipaddress

Ответить | Правка | Наверх | Cообщить модератору

28. Сообщение от Аноним (52), 13-Мрт-26, 09:12   +1 +/
А это "год линукса на десктопе против серверного линукса" ака "функциональность против простоты"
И то, и другое имеет право на жизнь...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

29. Сообщение от Аноним (52), 13-Мрт-26, 09:13   +/
mysql и sqlite не сравнимы по скорости
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #41

30. Сообщение от gz (?), 13-Мрт-26, 09:14   +/
все ненадо, ато слиняют ведь и те внедрятели с чудесатыми предложениями сделать чтото во фряхе
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

31. Сообщение от Аноним (31), 13-Мрт-26, 09:15   –3 +/
Было бы неплохо, если одним методом/способом модно было управлять настройками всего софта, как на системном, так и на пользовательском уровне. Вроде были попытки /etc в xml/json записать. Но это надо от религии отказаться. Потому что как и во всякой религии наибольшее сопротивление любому (даже самому здравому изменению) будет от упоротых фундамендалистов.
Хотите чтобы все было как 20 лет назад? В чем проблема - скачайте из архива линукс 20 летней давности и пользуйте.

Проблема виндового реестра в бинарности и монолитности, что легко решаемо технически. Но В еще большей мере в отсутствии документации, и зоопарком подходов чего и зачем там хранить.  

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22 Ответы: #35, #43, #60

32. Сообщение от Жироватт (ok), 13-Мрт-26, 09:15   +10 +/
Почему перебор? Самый раз. Полноценный движок баз, который потом можно будет смигрировать на

"
Три файла БД – для логов царственных демонов в системдишных шатрах,
Семь – для пользовательских профилей программ и гуртовщиков мыши,
Девять – для всеъ, облечённых в сисопские права,
Один движок запустит Владыка на облачном троне,
В ядре по имени linux, где уже распростёрся мрак.

Один ms sql server в системе покорит их, он соберет их,
скуль сервер притянет их и в чёрную цепь скуёт их
В ядре по имени linux, где уже распростёрся мрак.
"

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #88

33. Сообщение от Жироватт (ok), 13-Мрт-26, 09:16   +/
Ну, для времени миграции с базы на базу - вполне.
Далее старый способ фиксации логов отключается, когда новый уже достаточно отлажен
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #44

34. Сообщение от Жироватт (ok), 13-Мрт-26, 09:21   +2 +/
Внутри особой виртуальной машины
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

35. Сообщение от Duck Fiemail (?), 13-Мрт-26, 09:21   –1 +/
Спасибо, а то я уже думал что меня не поняли.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #42

36. Сообщение от aname (ok), 13-Мрт-26, 09:23   +3 +/
Раст в ведро протащили, почему бы и не протащить SQLite
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #92

37. Сообщение от Жироватт (ok), 13-Мрт-26, 09:24   +1 +/
Это не стильно, не модно, нужно знать grep+awk и иметь квалификацию повыше, чем one-button-monkey.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #50, #54, #123

38. Сообщение от Аноним (38), 13-Мрт-26, 09:24   +1 +/
> Хранение логов в тормозлайт

По сравнению с чем SQLite тормозной?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #73

39. Сообщение от letsmac (ok), 13-Мрт-26, 09:36   +/
1C в свое время такое уже пробовал. В итоге вернулись к бинарным журналам. Тормозило на больших файлах знатно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #74

40. Сообщение от Аноним (38), 13-Мрт-26, 09:38   +1 +/
> это завязывает на стороннего разработчика, который неизвестно что может сделать и с продуктом

Ничего он не может сделать после того, как конкретная версия опубликована.

> Если они такие любители прокладок пусть пишут новые либы для нового бинарного собственного и если надо расширяемого формата

Да вон уже понаписали велосапедов; список в новости. В пятый раз наступать на те же грабли изобретением пятого велосапеда, видимо, не хотят.

> А не превращают всю систему в один единый тормозящий скуль

Тем временем в новости:

"проблем, среди которых [...] низкая производительность запросов"

Но в пятом велосапеде обязательно получится быстро!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #75

41. Сообщение от User (??), 13-Мрт-26, 09:39   +2 +/
Ну да - sqlite в таких сценариях прям сильно быстрее будет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #72

42. Сообщение от Аноним (31), 13-Мрт-26, 09:45   +/
Это понимает любой, кому приходится часто лезть в потроха линуксовых систем. Ну а школота на то и школота - ей, как собачке, главное заявить о своем присутствии опИсав самый высокий столб/дерево/забор что они нашли в пределах своей видимости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

43. Сообщение от User (??), 13-Мрт-26, 09:46   +/
А не нужно уже. Проблема "в общем" решена дополнительными уровнями абстракции в виде terraform+(ansible|salt|черт-в-ступе) - _ты_ управляешь состоянием системы плюс-минус декларативно, описывая его да-да, вот этими вот yaml'ями плюс-минус в одном месте - а то, что "под капотом" там ошмётки потрохов с 70х еще годов... Ну вот у связистов еще с 40х наследие не разгребли до конца, а у энергетиков - так и вовсе девятнаха местами, и чО? Не переделывать же, право-слово.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #69, #91

44. Сообщение от Аноним (21), 13-Мрт-26, 09:46   +2 +/
Уточню проблему, если кто не понял:

- Для каждого типа журналов создаётся отдельная библиотека
- задействование индексов

Точно логи пишем?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #131

46. Сообщение от Аноним (21), 13-Мрт-26, 09:54   +1 +/
> При сбое запись может быть частично повреждена

Дак это и к скуляйту относится. Что они подразумевают под сбоем? Железо гикнулось? Система в панике? Приложение кривое? Первым двум скуляйт не поможет. Остаётся приложение. Если приложение глюкнуло - мы в логах ничего не увидим. Скуляйт намекает, что сервера логирование теперь нету, а записью занимается непосредственно само приложение.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #64, #143

47. Сообщение от Диды (ok), 13-Мрт-26, 10:04   +2 +/
>Для исключения конфликтов при одновременной записи в журтал несколькими процессами (например, sshd и login) ....

Чёт не понятно, как тут sqlite поможет

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #51

48. Сообщение от Аноним (52), 13-Мрт-26, 10:05   +1 +/
Реестр linux это gconf/dconf?)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

49. Сообщение от Аноним (21), 13-Мрт-26, 10:05   +/
> все на sqlite переведем

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

50. Сообщение от Аноним (21), 13-Мрт-26, 10:06   –1 +/
Для чтения бинарников или скуляйта что надо знать? :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

51. Сообщение от Аноним (52), 13-Мрт-26, 10:06   +/
Механизм блокировки
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #56, #112

52. Сообщение от Аноним (52), 13-Мрт-26, 10:08   +1 +/
Больше 10 лет - в прошлом месяце))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

53. Сообщение от Аноним (21), 13-Мрт-26, 10:10   +/
> Предоставление fallback-бэкенда, хранящего журналы в упрощённом бинарном формате, для систем, на которых SQLite может оказаться избыточным

Получается, скуляйт более жрущий память и более тормозной, а не то, что расписали в новости.

Ответить | Правка | Наверх | Cообщить модератору

54. Сообщение от Аноним (54), 13-Мрт-26, 10:12   +4 +/
Короче, нужно по-дидовски и пердольно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #62, #68

55. Сообщение от Аноним (55), 13-Мрт-26, 10:14   +4 +/
самый лучший формат в данном случае - это текстовый.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #108

56. Сообщение от Аноним (21), 13-Мрт-26, 10:15   –1 +/
Этот механизм эксклюзивный только для скуляйта? Больше нигде нельзя использовать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51 Ответы: #58

57. Сообщение от Сталин (?), 13-Мрт-26, 10:16   +/
Возможно тем, что там нет индексов и поиск o(n), а не o(log n)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #136

58. Сообщение от Аноним (52), 13-Мрт-26, 10:18   +/
Нет, man flock
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56 Ответы: #79

59. Сообщение от Соль земли2 (?), 13-Мрт-26, 10:24   +/
Уже же есть journald, зачем этот огород?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #161

60. Сообщение от Аноним (21), 13-Мрт-26, 10:25   +2 +/
фиксэд:

> Вроде были попытки /etc в xml/json записать. Но это надо религию принять. Потому что как и во всякой религии наибольшее сопротивление любому существующему инструменту будет от упоротых религиозных. Хотите чтобы всё менялось каждую неделю? В чём проблема - делайте форк от форка каждую неделю.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #65

61. Сообщение от Соль земли2 (?), 13-Мрт-26, 10:26   –1 +/
Индексировать для быстрого поиска по полям позволял?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #63, #132

62. Сообщение от Аноним (21), 13-Мрт-26, 10:31   +/
Пройдёт немного времени - и логи в скуляйте станут "по-дидовски и пердольно". А внуки будут топить за новое, например, логи в облачном блокчейте через торренты.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54 Ответы: #111

63. Сообщение от Аноним (21), 13-Мрт-26, 10:33   +/
> быстрого

Хинто 1: Как часто это делаешь? Сколько процессорного времени от суточного на это уходит?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #90

64. Сообщение от Аноним (64), 13-Мрт-26, 10:38   +/
Нет, логированием занимается не приложение, а все так же система  / системный демон. Но пишет оно теперь не в конкретно-специфичный бинарный файл, а в гораздо более широко распространенном формате. Приложению (если только оно не занимается анализом тех самых специфичных бинарных файлов) что в лоб, что по лбу - оно от этой смены бэкэнда никак не зависит.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46 Ответы: #135

65. Сообщение от Аноним (64), 13-Мрт-26, 10:42   –1 +/
Дык оно и меняется, каждую неделю, причем безо всяких форков. Нужно быть идиотом, чтобы требовать чтобы что-то развивалось/улучшалось, но при этом не менялось. То что не развивается - оно уже мертво и давно на свалке. А вот кому хочется чтобы все оставалось как есть - ради бога, делайте форк и держитесь за него крепко. Ибо апстрим (если он еще не сдох - см. выше) БУДЕТ меняться независимо от вашего желания.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60 Ответы: #137

66. Сообщение от Аноним (66), 13-Мрт-26, 10:51   –2 +/
> lastlog, btmp, utmp и wtmp

А оно вообще нужно? Первый раз о таких слышу.

> специализированных разделяемых библиотек, использующих SQLite. Для каждого типа журналов создаётся отдельная библиотека с единообразным C-интерфейсом: liblastlog2, libbtmp2, libutmp2 и libwtmp2

Логгинг системных событий должен делаться через интерфейсы ОС, а не сбоку, какими-то спец. либами.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #151

67. Сообщение от Ахз (?), 13-Мрт-26, 10:54   –2 +/
Текстовый формат это ущерб.
Логи всегда структурированы, набор полей почти всегда предопределен. имхо очень здравая и полезная идея, когда к логам можно обратиться кверей, а не отправлять на стдин грепа тонну овна в поисках вхождения.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #76, #93

68. Сообщение от Аноним (68), 13-Мрт-26, 10:57   +1 +/
нее, по миллениальски кавайно и лобно-томильно-дольно
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54

69. Сообщение от Аноним (69), 13-Мрт-26, 11:14   +/
Раз в 40 лет можно и переделать. С учётом накопившегося опыта, так сказать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43

70. Сообщение от Аноним (70), 13-Мрт-26, 11:14   +2 +/
> Из-за требований ABI‑совместимости

Ага, вот и шиза вскрылась - api  у них нонсенс а abi железобетоно нетрогать. Биполярочка

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #77, #104

71. Сообщение от mumu (ok), 13-Мрт-26, 11:22   +4 +/
Есть опасения насчет устойчивости к bad-секторам и т.п. проблемам, если файлы немного побились. SQL-ям от этого обычно очень плохо
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #82, #115

72. Сообщение от Аноним (88), 13-Мрт-26, 11:24   +1 +/
Да в воображаемых сценариях, которые не встречаются в реальной жизни.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #81

73. Сообщение от Аноним (88), 13-Мрт-26, 11:25   –1 +/
Вот прям по сравнению совершенно со всем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #87, #147

74. Сообщение от Аноним (88), 13-Мрт-26, 11:26   +1 +/
Я даже не удивлён что они попробовали этот заведомо провальный варинт это фишка их компании.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39

75. Сообщение от Аноним (88), 13-Мрт-26, 11:28   +/
Да только все проблемы, может кроме переполнения даты полностью выдуманные и нужны для попивателей смузи. В остальном логи работали идеально.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40

76. Сообщение от Аноним (88), 13-Мрт-26, 11:32   +3 +/
Кто предопределяет набор полей? Министерство логов, отдел наименования полей?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67

77. Сообщение от Аноним (88), 13-Мрт-26, 11:34   +/
Так это внутреннее abi, которое по кругу используют все программы и имеют жесткие связи. Как только меняешь тебе сразу прилетает. А api пользуется тот кто тебя никогда не достанет и не узнает где ты живешь.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

78. Сообщение от Аноним (78), 13-Мрт-26, 11:36   +3 +/
Текстовые логи не пробовали?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #83

79. Сообщение от Аноним (80), 13-Мрт-26, 11:36   +1 +/
Звучит как шикарная возможность организовать DoS, если кто-то блокировку не отпустит.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58

80. Сообщение от Аноним (80), 13-Мрт-26, 11:38   –1 +/
GDBM как-то обеспечивает атомарность через reflink copying и создание двух файлов БД: старой и новой версии, которые меняются местами.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

81. Сообщение от User (??), 13-Мрт-26, 11:41   +/
> Да в воображаемых сценариях, которые не встречаются в реальной жизни.

Ооо, экспертная экспертиза от экспертов подкатила.
Мускуль _может_ быть быстрее в сценариях, когда у тебя "горячие" данные\индексы в памяти и ты работаешь с ними - но в случае с аппенд-онли логами, которых может быть еще и немало? Неа.
Может быть быстрее в случаях конкуррентной многопоточной записи - но этот ластлог сам угадай, кем-и-как пишется.
А в сценариях "пролопатить *цать-данных" - ну вот duckdb _у меня_ прям изрядно быстрее работает.
Такие вот дела.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #86

82. Сообщение от Аноним (88), 13-Мрт-26, 11:41   +4 +/
sqlite терял данные и потому что место на диске кончилось и просто так. Худшее решение для всего как electron.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

83. Сообщение от Аноним (88), 13-Мрт-26, 11:42   –4 +/
Резиновые жесткие диски уже завезли или служебная информация в текстовом виде более красиво?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78 Ответы: #85, #164

84. Сообщение от Аноним (84), 13-Мрт-26, 11:43   +/
В принципе неплохой вариант - стандартизировать API с библиотеками. А как именно библиотеки будет хранить - это уже будет вторично (backend хоть на простых текстовых, хоть на бинарных, хоть в XML/JSON/etc.., хоть интегрируют в это journald)
Ответить | Правка | Наверх | Cообщить модератору

85. Сообщение от Аноним (85), 13-Мрт-26, 11:44   +3 +/
> - /var/log/lastlog - время последнего входа (структура "struct lastlog" с полем "ll_time" 32-разрядного типа time_t);
> - /var/log/btmp - неудачные попытки входа;
> - -var/run/utmp - текущие сеансы;
> - /var/log/wtmp - история входов и выходов.

Для чего из этого вам не хватает нынешних объёмов диска?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83 Ответы: #127

86. Сообщение от Аноним (88), 13-Мрт-26, 11:45   +/
>> Да в воображаемых сценариях, которые не встречаются в реальной жизни.
> Ооо, экспертная экспертиза от экспертов подкатила.
> Мускуль _может_ быть быстрее в сценариях, когда у тебя "горячие" данные\индексы в
> памяти и ты работаешь с ними - но в случае с
> аппенд-онли логами, которых может быть еще и немало? Неа.
> Может быть быстрее в случаях конкуррентной многопоточной записи - но этот ластлог
> сам угадай, кем-и-как пишется.
> А в сценариях "пролопатить *цать-данных" - ну вот duckdb _у меня_ прям
> изрядно быстрее работает.
> Такие вот дела.

То есть ты пытаешься описать сценарии, которые у нормальных людей в нормальной жизни не встречаются?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81 Ответы: #89

87. Сообщение от Аноним (87), 13-Мрт-26, 11:45   +1 +/
Отличная аргументация.

Может, хотя бы попробуешь ссылки какие-то найти, бенчмарки?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73 Ответы: #125

88. Сообщение от Аноним (88), 13-Мрт-26, 11:46   +1 +/
Но ведь можно как это любят оптимизровать sqlite инплейс заменить на Mysql, Postgres, MSSQL, Oracle наконец, чтобы было энтерпрайзненько.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32 Ответы: #95

89. Сообщение от User (??), 13-Мрт-26, 11:58   +/
>[оверквотинг удален]
>> Мускуль _может_ быть быстрее в сценариях, когда у тебя "горячие" данные\индексы в
>> памяти и ты работаешь с ними - но в случае с
>> аппенд-онли логами, которых может быть еще и немало? Неа.
>> Может быть быстрее в случаях конкуррентной многопоточной записи - но этот ластлог
>> сам угадай, кем-и-как пишется.
>> А в сценариях "пролопатить *цать-данных" - ну вот duckdb _у меня_ прям
>> изрядно быстрее работает.
>> Такие вот дела.
> То есть ты пытаешься описать сценарии, которые у нормальных людей в нормальной
> жизни не встречаются?

Ээээ... ну вот тебе сценарий - пишем логи в реляционную базу. Чо не так?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86

90. Сообщение от Соль земли2 (?), 13-Мрт-26, 12:01   +/
Ну благодаря индексам journald позволяет быстро найти нужный отрезок времени.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #124

91. Сообщение от Аноним (64), 13-Мрт-26, 12:05   +/
Ну дык, о чем и речь. С уровня абстракции выше какая разница что там в потрохах ниже. Но вот кто-то решил разгрести и привести их в порядок. Я так скажу - эти бинарные файлы меня иногда раздражали, ибо их так быстро и просто не посмотришь, надо утильку соотвествующую запускать. Благо это не часто требуется. Но раз эту утильку не обойти, какая разница в каком конкретно бинарном формате оно свое барахлишко хранит. Насчет ресурсов тоже какой-то просто анекдот. Это что за линукс системы такие, что ядро там и куча юзерспейса взлетает, пользователи какие то подразумеваются (ссш там например, или консоль какая-то, не говоря уж про шелл), а вот для скулайта уже не хватает? да любой пакетный менеджер в разы больше отожрет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #116

92. Сообщение от Аноним (92), 13-Мрт-26, 12:06   +2 +/
Тогда в Unbreakable Linux будет Oracle DB для lastlog, btmp, utmp и wtmp.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #119

93. Сообщение от Макан Негодяй (?), 13-Мрт-26, 12:26   –1 +/
А ещё они должны быть зашифрованы, чтобы логи не смог прочитать злоумышленник!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #113, #141

94. Сообщение от Аноним (94), 13-Мрт-26, 12:27   +1 +/
Вроде бы я когда-то видел предостережение от Мозиллы, в котором она призывала с осторожностью относиться к sqlite и не использовать его для новой функциональности. Видимо, они им очень наелись с Лисой.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #98, #99, #156

95. Сообщение от Жироватт (ok), 13-Мрт-26, 12:31   +2 +/
> Но ведь можно как это любят оптимизровать sqlite инплейс заменить на

Ну или хотя бы единый движок СУБД типа марии, который будет тянутся уже ядром, но это херит любые встраивыемые сценарии.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #88

96. Сообщение от Фнон (?), 13-Мрт-26, 12:36   +1 +/
В мозгах линуксоидов, явно, наблюдается отход от принципов построения UNIX: "всё есть файл".
Ещё немного, и линукс превратится в System i, где "всё есть запись в табличке в реляционной БД".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #97, #105

97. Сообщение от Аноним (52), 13-Мрт-26, 12:39   +1 +/
Не только наблюдается - активно применяется в том же systemd.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

98. Сообщение от анон (?), 13-Мрт-26, 12:39   +/
Кеды с непомуком своим мучались с sqlite-ом, мучались, а потом сказали что нужен встроенный mysql, т.к. у них не решаемые проблемы с конкурентным доступом к sqlite из разных процессов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #100, #110

99. Сообщение от Аноним (52), 13-Мрт-26, 12:40   +/
Очень интересно, можно ссылочку?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94 Ответы: #101, #153

100. Сообщение от Аноним (52), 13-Мрт-26, 12:42   +/
https://bugs.gentoo.org/936102 возвращаются на sqlite?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98

101. Сообщение от Аноним (94), 13-Мрт-26, 12:58   +/
Поискал и не нашел. Давно это было, лет 10-15 тому или даже раньше. Может быть с тех пор что-то поменялось. Насколько я помню содержание статейки, основная мысль была в том, что базу надо аккуратно и грамотно обслуживать, ее нельзя оставить на самотек. Ну и, конечно, всё зависит от данных и сценариев использования, насколько часто они удаляются/обновляются. В свое время (а может быть и сейчас) в интернете были советы "как ускорить Лису" - всё сводилось к операции vacuum на разросшейся и фрагментированной sqlite-базе.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #99 Ответы: #102

102. Сообщение от Аноним (52), 13-Мрт-26, 13:08   +/
Интересно что Chrome/ium тоже использует sqlite.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #101

104. Сообщение от Аноним (23), 13-Мрт-26, 13:30   –2 +/
А ты разницу между ABI и API понимаешь?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

105. Сообщение от Аноним (64), 13-Мрт-26, 13:41   +1 +/
Действительно, имеется проблема в мозгах отдельных линуксоидов. Некоторые не могут понять что между "все есть файл" и "все есть текстовый файл" огромная разница.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96

106. Сообщение от Аноним (106), 13-Мрт-26, 13:42   +2 +/
Блин, можно сто угодно но не скулайт? Медленная, нанадёжная, однопоточная базёнка, без типизации, с непонятной моделью разработки от непонятного BDFL, не принимающего контрибушоны, в самописной недо vcs?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #109

107. Сообщение от Аноним (107), 13-Мрт-26, 14:23   +/
systemD к GNU/Linux не имеет прямого отношения.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #118

108. Сообщение от User (??), 13-Мрт-26, 14:31   –1 +/
> самый лучший формат в данном случае - это текстовый.

Но диды почему-то выбрали...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

109. Сообщение от Аноним (66), 13-Мрт-26, 14:34   +/
Андройд разрабам надо что-то делать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106

110. Сообщение от Аноним (66), 13-Мрт-26, 14:39   +/
Нерешаемые для разрабов всяких некомуков с алконадями.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98

111. Сообщение от User (??), 13-Мрт-26, 14:41   +/
> Пройдёт немного времени - и логи в скуляйте станут "по-дидовски и пердольно".
> А внуки будут топить за новое, например, логи в облачном блокчейте
> через торренты.

Очнись, Нео!
Все значимые логи давно уже по эластикам-грейлогам-локи лежат. Даже journald вспышку похлопал и реальные задачи не им решаются. Это вот хрен пойми зачемное копошение слоупоков

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #62

112. Сообщение от Диды (ok), 13-Мрт-26, 14:46   +/
Ну так и у sqlite писатель всегда один - вроде блокировка на уровне файла базы данных
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51

113. Сообщение от Абра (?), 13-Мрт-26, 14:58   +/
Судя по предложению, злоумышленники смогут и записи удалять после себя:))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93

114. Сообщение от Аноним (115), 13-Мрт-26, 15:16   +1 +/
протестую, давайте сразу постгрес какой-нибудь, или куда-нибудьсразу в облако в спланк какой-то, зачем насиловать диск пользователя? зачем тратить ресурсы пользователя? На кой мне ваши эти логи если их любой может зачистить и удалить? на кой они нужны? для расследования инцидентов? да в современном мире нах никому не нужно ничего расследовать, у вас из карманов  свертки подарков достанут и все.
Ответить | Правка | Наверх | Cообщить модератору

115. Сообщение от Аноним (115), 13-Мрт-26, 15:19   +/
> Есть опасения

Вы серьезно? опасения? Да им плевать на ваш хард диск, задайтесь вопросом, на кой Х нужны эти логи? Секурюрности ради? Аудита ради? Курам на смех!!! Задать надо главный вопрос, какого Х они используют без необходимости и насилуют диск пользователя?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71 Ответы: #163

116. Сообщение от User (??), 13-Мрт-26, 15:20   +/
>[оверквотинг удален]
> что там в потрохах ниже. Но вот кто-то решил разгрести и
> привести их в порядок. Я так скажу - эти бинарные файлы
> меня иногда раздражали, ибо их так быстро и просто не посмотришь,
> надо утильку соотвествующую запускать. Благо это не часто требуется. Но раз
> эту утильку не обойти, какая разница в каком конкретно бинарном формате
> оно свое барахлишко хранит. Насчет ресурсов тоже какой-то просто анекдот. Это
> что за линукс системы такие, что ядро там и куча юзерспейса
> взлетает, пользователи какие то подразумеваются (ссш там например, или консоль какая-то,
> не говоря уж про шелл), а вот для скулайта уже не
> хватает? да любой пакетный менеджер в разы больше отожрет.

Да поздно уже, говорю же. Смысл какой? Если понадобилось логи вот прям _на сервере_ смотреть - значит очень и очень многое у тебя _уже_ пошло не так. И тут есть у тебя "утилька", нет её...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #91

117. Сообщение от Stanislavvv (ok), 13-Мрт-26, 15:21   +1 +/
Хрен бы с тем, что логи будут в БД, от Y2038 всё ж действительно надо избавляться. Но БД требует обслуживания — кто его делать будет?

Ещё: как часто вы заглядываете в эти файлы тем или иным способом? Лично я — хорошо, если раз в неделю на подчинённых серверах и скорость доступа тут ни разу не ограничитель, несмотря на то, что на сервера есть пользователи из голого инета.

По-моему, не в том месте оптимизируют...

Ответить | Правка | Наверх | Cообщить модератору

118. Сообщение от User (??), 13-Мрт-26, 15:23   +/
> systemD к GNU/Linux не имеет прямого отношения.

Ну, будем честны - имеет примерно такое же, как "GNU" к "linux'у": какие-то мутные перцы сделали что им надо было и на какое-то время стали стандартом de-facto.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107

119. Сообщение от aname (ok), 13-Мрт-26, 16:06   +/
> Тогда в Unbreakable Linux будет Oracle DB для lastlog, btmp, utmp и
> wtmp.

Стоит отдать должное: оно работает.
Бтв, всегда можно пропатчить на своё. Неужели СООБЩЕСТВО™©® не осилит?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92

120. Сообщение от Аноним (120), 13-Мрт-26, 16:08   +/
Главное, чтобы sql injections предотвратили, когда будут в btmp писать имена юзеров.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #155

121. Сообщение от aname (ok), 13-Мрт-26, 16:08   +/
> Кому-то очень хочется внедрить нечитаемую систему протоколирования из мира Windows в мир
> GNU/Linux ?
> А зачем?
> Системды мало?

"EVTX — это
формат бинарных файлов журналов событий Windows (начиная с Vista/7), используемый для хранения системных, прикладных записей и логов безопасности Solvusoft. Файлы представляют собой XML-структуры, упакованные в бинарный контейнер, и обычно располагаются в C:\Windows\System32\winevt\Logs" © АИ

Ну, как будто бы, XML-файлы- не худшее, что могло случиться. Бтв, парсить, всё же, проще

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

122. Сообщение от premium user (?), 13-Мрт-26, 16:39   +1 +/
> переполнится 19 января 2038 года.

Ну и чё, сделать в смотрелке логов обработку скачка на 2^31 секунд назад, если вдруг в логах появились даты из 70х - делов на 15 минут. Либо начинать сейчас хранить дату в uint32 хотя бы - хватит ещё до 2136 года. Они там 1 бит не используют.
>  Для каждого типа журналов создаётся отдельная библиотека

ИБД

Ответить | Правка | Наверх | Cообщить модератору

123. Сообщение от User (??), 13-Мрт-26, 17:02   –1 +/
> Это не стильно, не модно, нужно знать grep+awk и иметь квалификацию повыше,
> чем one-button-monkey.

Ну и ещё море, море, море терпения чтобы грепнуть какой-нибудь десяток гигабайт. Ну и немного телепатии ещё иногда, ага. Структуры-то нет, и что там в текстовый лог могло прилететь - да ктулху его знает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #138

124. Сообщение от Аноним (124), 13-Мрт-26, 17:13   +1 +/
Journald даже при открытии логов за текущий запуск сервиса без логов заставляет тебя сидеть ждать, пока оно соизволит раздуплится. Поттеринговский журнал - это анти-пример того, как нужно делать логи.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90 Ответы: #130

125. Сообщение от Аноним (125), 13-Мрт-26, 17:22   –2 +/
То есть ты умеешь думать только чужими ссылками бенчмарками? Совет никогда не включай телевизор.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #87 Ответы: #140, #154

126. Сообщение от Аноним (124), 13-Мрт-26, 17:22   +/
Sqlite атомарность имеет ровно через тот же механизм - flock. Это вообще не панацея, особенно если вы не собираетесь ограничить список приложений которые могут писать в подобные файлы (например, что там забыл sshd?), но если приложению дали достаточно прав, чтобы писать в этот файл - значит так тому и быть. Если это нежелательно - значит нужно пропатчить приложение, чтобы оно писало в отдельный wtmp файл.

Бинарные форматы имеют фиксированный размер полей, следовательно для доставания последних транзакций достаточно сделать lseek(SEEK_END) в файле, проверить что мы приземлились на делимое на размер структуры значение (иначе откатится назад, т.к. мы обнаружили незаконченную запись) и просто прочитать структуру.

y2038 - вообще не проблема, ибо единственные приложения, которые нужно пропатчить - это читателей utmp/wtmp, чтобы они правильно обрабатывали переполнение 31 бит и показывали 2^31 как 2004-01-10 (22 года назад). Либо вообще отбросить отрицательный знак из записи и использовать полные 32 бита как таймстамп и апкастить значение при чтении до 64 бит перед сравнением двух таймстампов.

"Расширяемость" достигается созданием новых файликов, которое имеет отношение к тому как в конкретном приложении некто может "залогинится" в систему (чем sshd, слушающий на 22 порту, отличается от HTTP сервера с cgi и плюшками, слушающим на 80 порту?).

"Медленный поиск" в линейном файлике, который из себя представляет тупо массив структур с известным расположением всех полей - бинарный поиск, если нужно вытащить по времени. Если нужно что-то другое - sqlite либо сожрёт (значительно) больше места, либо будет таким же медленным, как линейный поиск. К тому же линейный поиск можно распараллелить по потокам в читалках; опять же, редактировать нужно будет только читалки, не писателей в эти файлы.

Ответить | Правка | Наверх | Cообщить модератору

127. Сообщение от Аноним (125), 13-Мрт-26, 17:26   –2 +/
Вместо даты 32 бита 4 байта ты собрался писать 10 юникод символов суммарно в 20 байт? Ты гуманитарий?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85 Ответы: #142

128. Сообщение от morphe (?), 13-Мрт-26, 17:31   –1 +/
С append-only вроде journald проще убедиться что ничего не повредилось
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

129. Сообщение от Аноним (132), 13-Мрт-26, 17:36   +2 +/
> переполнение 32-разрядных счётчиков времени в 2038 году

Кого-то волнует история входов до 1970 года? А unsigned хватит до 2106 года.

Вместо одного каста к unsigned тащить sqlite? :) Остальные проблемы вообще надуманные.

Ответить | Правка | Наверх | Cообщить модератору

130. Сообщение от Соль земли2 (?), 13-Мрт-26, 17:37   +/
нет, давайте лучше будем разбрасывать логи по всей файловой системе
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124

131. Сообщение от Аноним (131), 13-Мрт-26, 17:56   +/
>- Для каждого типа журналов создаётся отдельная библиотека

Крохотная библиотека, генерирующая специфические SQL-запросы. Вероятно API будет обратно совместим со старым API логов.
>- задействование индексов

Они же на производительность жалуются, без индексов выборка информации занимает слишком много времени. Особенно если поиском будут заниматься какие-то скрипты.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #134

132. Сообщение от Аноним (132), 13-Мрт-26, 17:57   +/
Так вон и по бинарникам этим ищут фуллсканом.
Хотя мне непонятно, что мешает сбоку положить индекс, как в dBASE IV примерно из тех времён.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61

133. Сообщение от Аноним (131), 13-Мрт-26, 18:16   +2 +/
>Если записывать не больше страницы за раз, то вполне себе атомарная

А там есть выравнивание по страницам? Если нет, то вообще нельзя предсказать произойдёт ли разрыв записи между страницами или нет. Без журнала, нельзя быть уверенным была ли завершена запись. ФС конечно старается не развалится, но она вообще не оберегает данные внутри файлов. Нужно понимать, что для HDD мы вообще не можем быть уверены на каком бите прервётся запись. В случае SSD запись производится блоками в несколько килобайт, но реальный размер на конкретном SSD абсолютно неизвестен от 4 КБ до 64 КБ.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

134. Сообщение от Аноним (134), 13-Мрт-26, 18:29   +/
> на производительность жалуются, без индексов выборка

А что мы чаще делаем: пишем в лог или разбираем падения прог?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #131

135. Сообщение от Аноним (134), 13-Мрт-26, 18:34   +/
> система  / системный демон

И какая тогда проблема с записью? Или система падает что ли чаще, чем скуляйт?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64

136. Сообщение от Аноним (134), 13-Мрт-26, 18:37   +/
Как часто надо разбирать логи? Это точно логи?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

137. Сообщение от Аноним (134), 13-Мрт-26, 18:40   +/
Что такое декларация и имплементация - некоторым предстоит только узнать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65

138. Сообщение от Аноним (134), 13-Мрт-26, 18:43   +/
> чтобы грепнуть какой-нибудь десяток гигабайт

У вас точно там логи?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #123 Ответы: #157

139. Сообщение от Аноним (139), 13-Мрт-26, 18:45   +/
1. Индексы всегда были маппингом. Зачем их тащит в формат файла?
2. Что в формате нет места для флага размера даты в байтах? Пишите с какого-то момента в 64-битном формате или сбрасывайте 32-битный, только учитывайте флаг.
3. использование интерфейса запросов это обслуживание и новый класс уязвимостей.
4. получается - что знаем то и предлагаем.
5. бинарность хороша для аппаратной реализации.
Ответить | Правка | Наверх | Cообщить модератору

140. Сообщение от Аноним (140), 13-Мрт-26, 18:47   +1 +/
> То есть ты умеешь думать только чужими ссылками бенчмарками?

Я умею не воспринимать всерьез набросы без какой-либо аргументации и доказательств.

В общем, ясно-понятно: никаких доказательств тормознутости SQLite не будет - только ad hominem.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125

141. Сообщение от Аноним (134), 13-Мрт-26, 18:49   +/
> должны быть зашифрованы

Ведь в логах часто логят плейн-пароли.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93 Ответы: #165

142. Сообщение от Аноним (134), 13-Мрт-26, 18:54   +/
> 10 юникод символов суммарно в 20 байт? Ты гуманитарий?

Такое только гуманитарий может написать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #127

143. Сообщение от tkzv (ok), 13-Мрт-26, 19:40   +/
>> При сбое запись может быть частично повреждена
> Дак это и к скуляйту относится.

SQlite сперва создаёт временный файл, затем переписывает старый. В худшем случае теряются несколько последних записей.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

144. Сообщение от Сладкая булочка (?), 13-Мрт-26, 19:44   +/
А зачем для системных логов, которые по факту временная серия, целая sql база данных?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #158

146. Сообщение от tkzv (ok), 13-Мрт-26, 19:54   +/
1. С каких пор SQlite стала виндовой?

2. Для чтения нужнен один 2-мегабайтный бинарник: sqlite3 log.db .dump | less. Можно more. Версия без поддержки UTF и Tcl существенно меньше. Программа ставится по зависимостям кучей других пакетов, включая Python, PHP, Node.js, NSS, Qt, Gnome, SVN, Cargo, MPD, NFS, Audacity, Avidemux, Hugin, Doxygen.

3. Если бы systemd был таким же простым, вылизанным и предсказуемым, все бы давно на него перешли.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

147. Сообщение от tkzv (ok), 13-Мрт-26, 19:55   +/
> совершенно со всем.

Даже с grep-ом?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

148. Сообщение от tkzv (ok), 13-Мрт-26, 20:04   +/
Ты SQlite пользовался хоть раз? Для работы ей достаточно 100 килобайт плюс размер библиотеки.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

149. Сообщение от tkzv (ok), 13-Мрт-26, 20:05   +/
Когда там был текстовый?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24

150. Сообщение от Анон1110м (?), 13-Мрт-26, 20:05   +/
Чёто вспомнилась ОС на .NET.

C# Open Source Managed Operating System (Cosmos) is a toolkit for building GUI and command-line based operating systems, written mostly in the programming language C# and small amounts of a high-level assembly language named X#.

https://www.gocosmos.org/

Ответить | Правка | Наверх | Cообщить модератору

151. Сообщение от tkzv (ok), 13-Мрт-26, 20:07   +/
Какие проблемы? Добавят в ядро несколько мегабайт сишных файлов. Лицензия позволяет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66

152. Сообщение от nrv (ok), 13-Мрт-26, 20:13   +/
я вот всегда думал:
сначала разрабатывается ОС (хз конечно как, может на более старой ОС, на ДОС, та на ЭВМ с перфокартой). С минимальным набором средств разработки под эту ОС, ака компилятор С
на ОС разрабатывает низкоуровневое ПО, утилиты
потом на них высокоуровневое ПО

чтобы иметь возможность ступить на уровень ниже - и исправить баг

а тут, что мы имеем: включить в системное окружение ОС высокоуровневое ПО

и я даже не против, когда-то линуксы должны же стать высокоуровневыми, чтобы на уровне пользователя чуть что не рассыпаться на набор скриптов и конфигов
но тогда должна быть ОС, на которой ведется разработка линукс? или линукс настолько дуальный что на это дело сгодится сборка без базёнки?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #172

153. Сообщение от tkzv (ok), 13-Мрт-26, 20:15   +/
Ссылку не дам, но подтверждаю, что многие данные, которые логично было бы хранить в sqlite, хранятся в самопальном формате, представляющем собой JSON, пожатый LZ4 с приклеенным магическим числом. Например, список вкладок в previous.jsonlz4.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #99

154. Сообщение от Аноним (154), 13-Мрт-26, 20:22   +/
> То есть ты умеешь думать только чужими ссылками бенчмарками?

Можешь свои предоставить, в чем проблема? Бремя доказательства лежит на утверждающем.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125

155. Сообщение от Сладкая булочка (?), 13-Мрт-26, 20:25   +/
> Главное, чтобы sql injections предотвратили, когда будут в btmp писать имена юзеров.

Тут еще орм нужен... на си, конечно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120

156. Сообщение от Сладкая булочка (?), 13-Мрт-26, 20:30   +1 +/
> Вроде бы я когда-то видел предостережение от Мозиллы, в котором она призывала
> с осторожностью относиться к sqlite и не использовать его для новой
> функциональности. Видимо, они им очень наелись с Лисой.

Возможно вы путаете с websql? https://en.wikipedia.org/wiki/Web_SQL_Database

К ней была критика как раз.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94

157. Сообщение от User (??), 13-Мрт-26, 20:38   +/
>> чтобы грепнуть какой-нибудь десяток гигабайт
> У вас точно там логи?

ээээ... у меня _на серверах_ их примерно "нет". А в эластике... Ну, скажем так - до известных событий прохладное хранение этого добра на мамазоне мы пробовали. Заказчик почему-то был уверен, что петабайты этого добра имеют ценность в течении десяти лет и порывался за это самое хранение заплатить.
Порвался, ага. Хватило почти на два года )

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #138

158. Сообщение от tkzv (ok), 13-Мрт-26, 20:40   –1 +/
Приходилось когда-либо работать с логами? Всерьёз, с поиском одновременных событий по нескольким логам, сопоставлением полей из нескольких логов. В объёмах, требующих автоматизации. Мы в такой ситуации быстро пришли к выводу, что SQL-база удобнее текстового файла, а SQlite удобнее самодельного бинарного формата, который можно спроектировать за разумное время.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #144 Ответы: #159, #160

159. Сообщение от Сладкая булочка (?), 13-Мрт-26, 20:59   +/
> Приходилось когда-либо работать с логами? Всерьёз, с поиском одновременных событий по нескольким
> логам, сопоставлением полей из нескольких логов. В объёмах, требующих автоматизации. Мы
> в такой ситуации быстро пришли к выводу, что SQL-база удобнее текстового
> файла, а SQlite удобнее самодельного бинарного формата, который можно спроектировать за
> разумное время.

Как вы сранвиваете логи на разных хостах?

Для такого обычно пишут демон, который логи собирает и потом уже централизованно можешь грепать, и не важно 1 хост или 1000.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #158 Ответы: #167

160. Сообщение от Сладкая булочка (?), 13-Мрт-26, 21:02   +/
> SQL-база удобнее текстового
> файла, а SQlite удобнее самодельного бинарного формата, который можно спроектировать за
> разумное время.

Есть apache arrow и прочие columnar форматы для эффективного хранения временных данных, а это они и есть?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #158

161. Сообщение от Сладкая булочка (?), 13-Мрт-26, 21:08   +/
https://github.com/bakshansky/linux-auth-logs

5.2.  Using systemd-journald

   journald collects all events, but:

   - it is tied to systemd, leaving systems without systemd out of the
     solution;
   - it requires libsystemd, complicating tools;
   - it lacks a simple file-based interface;
   - it does not guarantee ACID at the individual record level.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59

162. Сообщение от Сладкая булочка (?), 13-Мрт-26, 21:10   +/
Написали бы тогда уж на расте новое решение. Почему нет? Заодно и проверим.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #171

163. Сообщение от Аноним (163), 13-Мрт-26, 21:15   +/
Контора пишет.
Зачем?
Надо.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #115 Ответы: #175

164. Сообщение от Аноним (163), 13-Мрт-26, 21:16   +/
Да, от 10 байт в день они порвутся, ТЕРАБАЙТНЫЕ ДИСКИ, да.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

165. Сообщение от Макан Негодяй (?), 13-Мрт-26, 21:16   +/
>> должны быть зашифрованы
> Ведь в логах часто логят плейн-пароли.

Приватные ключи ещё для дебага хорошо в логи пихать. Очень помогает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #141

167. Сообщение от tkzv (ok), 13-Мрт-26, 22:14   –1 +/
> Как вы сранвиваете логи на разных хостах?

У нас задачи были другие, не связанные с lastlog/btmp/utmp — несколько серверов, на каждом несколько процессов обрабатывает входящие данные с АЦП, иногда что-то падает. Долго пытались приспособить разные готовые решения, на момент моего ухода долбались с Graylog. SQlite прилепили как временную замену, но она оказалась самой надёжной, т.к. не зависит от сетевых соединений и прав. Каждый процесс пишет свой лог, по окончании он сбрасывается в общий. И это надо соотносить с логами других программ, обычно тоже текстовыми или Graylog.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159 Ответы: #170, #173

168. Сообщение от Аноним (168), 13-Мрт-26, 22:45   +1 +/
Мало хостов поимели через Log4j. Теперь появится возможность SQL иньекции через логи.
Ответить | Правка | Наверх | Cообщить модератору

170. Сообщение от Аноним (139), 13-Мрт-26, 23:03   +1 +/
Лабораторную поделку в прод?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #167

171. Сообщение от Аноним (134), 13-Мрт-26, 23:04   +/
Чтобы написать на расте, надо:
1. иметь исходник на Си;
2. попросить ИИ переписать.

Или вариант попроще:
1. иметь исходник на Си;
2. попросить ИИ написать обёртку над Си.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #162

172. Сообщение от Аноним (134), 13-Мрт-26, 23:07   +1 +/
> когда-то линуксы должны же стать высокоуровневыми

Увы, но на данном этапе основная деятельность пользователя - читать логи упавших программ настолько часто, что это приходится ускорять через создание индексов в БД.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #152

173. Сообщение от Аноним (134), 13-Мрт-26, 23:10   +/
У вас кони смешались с людями. Тут налицо ошибка проектирования системы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #167

174. Сообщение от Аноним (139), 13-Мрт-26, 23:16   +/
Автор топика написал что-то невнятное: "заменить устаревшие бинарные форматы системных журналов ...на новые разделяемые библиотеки"
Помогите расшифровать как совместить сущности разной природы.
Ответить | Правка | Наверх | Cообщить модератору

175. Сообщение от Аноним (115), 14-Мрт-26, 00:13   +/
> Контора пишет.

Так она все пишет.

> Зачем?

С конторой ясно, зачем это делает линукс?

> Надо.

Ну хавайте тогда, и не надо удивляться если там за место скулайта пихнут постгрес.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #163

176. Сообщение от Аноним (176), 14-Мрт-26, 00:52   +/
Зачем это надо, когда есть plaintext и journald
Вообще все логи в актуальном дистрибутиве должны быть в systemd-journald, а в альтернативной реальности в txt.
Больше никакие форматы непонятные не нужны
Ответить | Правка | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2026 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру