2015-10-14 4 views
1

У меня есть инструмент CLI, который обрабатывает кучу объектов, и я хотел бы использовать код выхода, чтобы сигнализировать, все ли работает хорошо или нет.Лучшая практика для кодов ошибок при пакетной обработке?

Теперь, если все в порядке, я возвращаю 0. Это довольно просто и очевидно.

Но что мне делать, если один из обработанных объектов не работает? Должен ли я просто вернуть 1, что тогда эффективно означает «Что-то пошло не так»? Или мне нужно вернуть число неудачных объектов в качестве кода ошибки?

Проблема заключается в том, что я не уверен в семантике кода ошибки: в принципе было бы интересно узнать, сколько объектов потерпело неудачу, но, с другой стороны, это означает, что я не могу различать разные ошибки от каждого другой, поскольку код ошибки больше не связан с фактическим типом ошибки.

Есть ли какие-либо рекомендации по тому, как это решить?

ответ

1

Возврат 1 и размещение журналов в некотором месте, которые могут быть прочитаны компьютером и человеком (CSV - хороший вариант), на мой взгляд, лучше всего, что вы можете сделать. Но если вы точно знаете типы ошибок, которые могут произойти, вы можете использовать их как masks, так что вы будете делать что-то, что вы можете декодировать, и знали, какие ошибки произошли, но без его подсчета.

Смежные вопросы