2014-09-29 5 views
0

Из-за требований приложения у меня есть внешний экземпляр CouchDB. Я хотел бы узнать, какие IP-адреса пытаются аутентифицироваться в моей базе данных. Проверяя файл couchdb.log, я вижу неудачные попытки аутентификации. Они похожи на это.Couchdb Logging

[Пн, 29 сентября 2014 13:43:32 GMT] [Информация] [< 0.28472.7>] 127.0.0.1 - - GET /offline_master/401

Однако, независимо от того, где я подключаюсь, кажется, что IP-адрес, который регистрируется, всегда 127.0.0.1. Неужели я неправильно понимаю, как это работает? Мне бы очень хотелось увидеть IP-адрес, который пытается подключиться.

ответ

1

127.0.0.1 является адресом couchDB обязан. Это происходит потому, что вы можете настроить couchdb для ответа по-разному в зависимости от того, какое имя хоста используется.

Единственный способ получить IP-адрес клиента - это включить уровень ведения журнала для «отладки». Вы можете сделать это на странице конфигурации в футоне.

Вы получаете записи, как это (IP клиента находится на 1-й линии):

[Tue, 30 Sep 2014 00:14:27 GMT] [debug] [<0.451.4>] 'GET'/{1,1} from "192.168.1.52" 
Headers: [{'Accept',"*/*"}, 
      {'Host',"localhost:5984"}, 
      {'User-Agent',"curl/7.30.0"}] 
[Tue, 30 Sep 2014 00:14:27 GMT] [debug] [<0.451.4>] OAuth Params: [] 
[Tue, 30 Sep 2014 00:14:27 GMT] [info] [<0.451.4>] 127.0.0.1 - - GET/200 

Будьте осторожны с этим. Журналы отладки чрезвычайно подробные. Для заполнения жесткого диска не потребуется много времени.

Можно установить уровни журналов по модулю. Модуль, который вам нужно установить, - couch_httpd. Установите для остальных по умолчанию значение «error» или «fatal».

3.6.2 Per module logging