September 11th, 2007

nepal

kernel summit

Вот ещё чего вспомнил про кернель саммит. В углу, справа от докладчиков, стоял большой микшерский пульт, куда были выведены все микрофоны. За пультом стоял Алан Кокс, изредка поправляя тот или другой канал.

Выглядело это так, как будто он вот-вот врубит какое-то жёсткое техно. Я с трудом подавил в себе желание подойти к нему и сказать что-то вроде "you really look great as a DJ".
nepal

mail machinery

У меня на forum.openvz.org есть форумы, которые по сути являются архивами списков рассылки (users@ и devel@). Точнее, раньше они были двусторонними, то бишь можно было постить ответ на форум, и он появлялся в списке рассылки. Таким образом, каждый мог выбирать и пользоваться тем, что ему больше нравится -- список рассылки или форум. К сожалению, эту возможность пришлось убрать.

Так вот, эти форумы остались как архивы списков рассылки. Работает это так: из списка рассылки апачу приходят все письма, прокмейл их сортирует и загоняет в форум (пайпом в некий php-шный скрипт).

Сегодня обнаружилось, что некоторых писем в этом архиве нет. Поглядев лог прокмейла, я увидел, что они падают не в форум, а в мейлбокс. Поглядев конфиг прокмейла, письма, которые падают куда надо, и письма, которые падают не туда, куда надо, я понял, что ошибся в регулярном выражении в .procmailrc. Точнее, не то чтобы ошибся, а не учёл, что некоторые письма на devel@ к нам приходят с другого списка рассылки (containers НА linux-foundation.org), соответственно, в них ни To: devel@, ни Cc: devel@ не написано.

Хорошая новость в том, что все эти письма не проимелись, а попадали в мейлбокс апачу. Дальше -- дело техники. Маленький скрипт на Python, который парсит мейлбокс, разбивая его на отдельные письма, среди этих писем выделяет те, в которых в заголовке List-Id прописано devel.openvz.org, и складывает их в отдельные файлики. Далее я эти файлики проглядел, выяснил, что всё нормально, и в цикле скормил их вышеупомянутому php-скрипту. Да, и .procmailrc тоже, конечно, пофиксил на предмет проверки не на To или Cc, а на List-Id. Часа полтора на всё потратил.

Мне вот интересно, что в таких случаях делают Windows-админы? Пишут на каком-нибудь ASP?