Size: a a a

2020 April 16

БС

Байт Словович in rannts
мир не черно белый.. И да человечки дураки, но обучаемые.

Поэтому нет проблем, если код упадет из-за ошибки в конфиге. Просто надо сделать так чтобы он упал до того как уедет на прод.
Обычно админам надо сконфигурить доступы в базу и другие 3rdparty сервисы. Это делается по шаблону. Тут сложно напортачить.
Еще иногда надо подкрутить какой нить таймаут или какой то параметр. ПРосто говоришь что надо и как задать.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Байт Словович
мир не черно белый.. И да человечки дураки, но обучаемые.

Поэтому нет проблем, если код упадет из-за ошибки в конфиге. Просто надо сделать так чтобы он упал до того как уедет на прод.
Обычно админам надо сконфигурить доступы в базу и другие 3rdparty сервисы. Это делается по шаблону. Тут сложно напортачить.
Еще иногда надо подкрутить какой нить таймаут или какой то параметр. ПРосто говоришь что надо и как задать.
Быстрее самому зайти в GUI-админку и набрать нужный таймаут. Или пускай это делает "менеджер", к которому прибежал клиент с жалобами.
Тут дело в том, что бы один раз написать всё это. Все эти "генераторы" документации и GUI-шных админок. А потом будет уже просто и легко.

Я бы написал такое, да пока нет времени. 😊
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Ну и да, тут есть ещё подводный камень - очень желательно что бы проект мог принимать изменения настроек без перезапуска.
Но если уж ни как - то добавить в админку кнопку "Restart"
источник

SZ

Sergey Z in rannts
Наверняка найдутся проблемы которых не было бы ни реши ты предыдущий слой проблем
источник

БС

Байт Словович in rannts
Kirill (Cykooz) Kuzminykh
Быстрее самому зайти в GUI-админку и набрать нужный таймаут. Или пускай это делает "менеджер", к которому прибежал клиент с жалобами.
Тут дело в том, что бы один раз написать всё это. Все эти "генераторы" документации и GUI-шных админок. А потом будет уже просто и легко.

Я бы написал такое, да пока нет времени. 😊
у меня несколько тысяч значений в конфиге. Таймаутов около сотни разных. Как найти нужный таймаут?
источник

БС

Байт Словович in rannts
Чем твоё GUI будет лучше структуированного конфига с коментариями?
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Разложи их по "дереву", что бы знать точно в какую ветку тебе надо идти.
источник

БС

Байт Словович in rannts
Так зачем UI?
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
В GUI проще войти - клик на закладке, и я уже в админке. GUI сразу подскажет тип данных и не позволит ввести херню (особенно если там select из нескольких вариантов).
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Сложный конфиг ни чем не отличается от "бизнес ресурсов", для которых, как правило, делается админка, а не запросами в базу из SSH-консоли всё меняется
источник

БС

Байт Словович in rannts
Ты какую проблему решаешь? Чтобы никто не написал херню в конфиг? А как ты решаешь проблему, чтобы никто не написал херню в код?
У тебя есть валидатор и схема на твой код?
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
У меня есть тесты на код 😊
источник

БС

Байт Словович in rannts
а тесты на тесты есть? 😊
источник

БС

Байт Словович in rannts
А тесты на схему конфига?
источник

БС

Байт Словович in rannts
Основная наша цель, это чтобы херня не добралась до продакшена. Для этого есть юнит тесты, всякие CI, и всякие промежуточные стенды и куча бестпрактикс, о которых сейчас говорят на каждом углу.
У тебя в схеме на конфиг может быть четыре варианта, а в коде только три поддерживаться
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Я решаю свою реальную боль - конфиги на стендах меняю в основном Я, или я подсказываю что надо поменять. Я не могу быстро посмотреть что-же там настроено на сервере и всё ли правильно. Потому что для этого надо лезть на сервер, искать файл, смотреть на него в унылом "чёрно-белом" виде. И при этом не видно какие именно настройки отличаются от дефолта.
источник

БС

Байт Словович in rannts
Ну я как бы тоже.. Только у нас конфиги делаются из шаблона который лежит в гите и скрипты которые выдерают инфу из всяких терраформов, чтобы прокинуть нужное значение в конфиг, тоже лежат в gitе.
Мне почти никогда не надо лезть на прод чтобы посмотреть на конфиг. Я его вижу в исходниках
источник

БС

Байт Словович in rannts
И унылый черно белый вариант в 100 раз лучше красивой UI которая не умеет искать. Вот посмотри на пичарм. Ты можешь в нем поиском найти нужный параметр. Это просто офигенно. Но сколько сил они потратили на это? Думаю дофига, ибо таких программ где легко найти конфиг, очень и очень мало.

А для работы с файлами за 50 лет придумано дохрена инструментов, и у тебя точно есть свои любимые. find/ grep/ sed/ awk.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Ой да, прикрутить примитивный поиск к админке, у которой есть все схемы - это же просто.
источник

БС

Байт Словович in rannts
А иногда нужно взять конфиги совсех совсех стендов и узнать что лежит в определенном параметре.. я это сделаю за секунду с помощью какого нить ансибла. А ты будешь каждый раз выкачивать файл и запускать GUI?
источник