2013-03-08 1 views
2

У меня есть приложение на AppHarbor, которое использует NLog для регистрации. Я пробовал дополнение Logentries, что является хорошим сервисом для подключения всех приложений, через которые осуществляется просмотр и просмотр через их веб-интерфейс. Это уже закончилось его бесплатной пробной версией, и я хотел бы посмотреть на то, что я сделал свой собственный журнал, прежде чем платить за эту услугу.Хорошая стратегия ведения журнала для AppHarbor и Amazon S3

Поскольку я использую AppHarbor, они рекомендуют не записывать в файловую систему, потому что они стираются при каждом развертывании и, когда в потоке, я выполняю несколько развертываний в день. Я использую S3 для хранения изображений в любом случае, поэтому кажется естественным хранить журналы там.

Проблема, которую я вижу с этим подходом, заключается в том, что я буду запускать операторы журналов в текстовый файл, хранящийся на S3, к которому я должен добавить. После того, как сайт получит некоторый трафик, будет множество одновременных вызовов для хранения записей журнала, что, вероятно, приведет к блокировке механизма записи. Есть ли лучший способ сделать это, о котором я не знаю? Может быть, до того, как отправить их в лог-записи, каким-то образом? Я использую Raven в качестве моей базы данных, поэтому можно смотреть на запись журналов непосредственно в Raven, если нет лучшего варианта.

ответ

2

Это не выглядит как есть NLog цели для S3 или RavenDB, но есть куча или другие варианты: http://nlog-project.org/wiki/Targets

+0

Благодаря @friism - похоже, кто-то написал цель RavenDB: https: // GitHub .com/mswietlicki/NLog.RavenDb – levelnis

+0

Но при ближайшем рассмотрении это проект, с которым я не смог работать раньше, поэтому я пошел с «Logentries» в первую очередь – levelnis

+1

И теперь у меня это работает. У меня было два проекта в моем решении и только добавили этот пакет в веб-проект. Как только я добавил его в проект домена, он начал работать. – levelnis