forum.bitel.ru
http://forum.bitel.ru/

Не пишет логи netflow Accounting сервер
http://forum.bitel.ru/viewtopic.php?f=44&t=8749
Страница 1 из 1

Автор:  van2002 [ 06 дек 2013, 10:19 ]
Заголовок сообщения:  Не пишет логи netflow Accounting сервер

Внезапно перестали писаться логи.
Netflow приходит, но ничего не пишется

конфиг:

<?xml version="1.0" encoding="UTF-8"?>
<application context="accounting">
<!-- Уникальное имя приложения -->
<param name="app.name" value="BGInetAccounting"/>
<!-- Уникальный числовой id приложения -->
<param name="app.id" value="18"/>

<!-- Параметры подключения к БД -->
<param name="db.driver" value="com.mysql.jdbc.Driver"/>
<param name="db.url" value="jdbc:mysql://ххххххххххх/bgbilling?useUnicode=true&amp;characterEncoding=Cp1251&amp;allowUrlInLocalInfile=true&amp;zeroDateTimeBehavior=convertToNull&amp;jdbcCompliantTruncation=false&amp;queryTimeoutKillsConnection=true&amp;connectTimeout=1000"/>
<param name="db.user" value="bill"/>
<param name="db.pswd" value="bgbilling"/>
<param name="db.validationTimeout" value="10"/>

<!-- Параметры подключения к MQ -->
<param name="mq.url" value="failover:(tcp://ххххххххххххх:61616)"/>
<param name="mq.user" value="bill"/>
<param name="mq.pswd" value="bgbilling"/>

<!-- id модуля -->
<param name="moduleId" value="15"/>
<!-- id корневого устройства -->
<param name="rootDeviceId" value="2"/>

<!-- Внутренняя переменная приложения, не изменять -->
<param name="commonIdentifierName" value="rootDeviceId"/>

<!-- Параметры сохранения radius-пакетов в файлы логов -->
<!-- Директория, в которую сохранять radius логи -->
<param name="datalog.radius.dir" value="data/radius" />
<!-- Размер блока данных в файле лога, также размер буфера на лог файл -->
<param name="datalog.radius.chunk.size" value="524288" />
<!-- Сжимать radius логи: 0 - не сжимать, 1 - zlib -->
<param name="datalog.radius.compression.type" value="1" />
<!-- Параметры сохранения flow-пакетов в файлы логов -->
<!-- Директория, в которую сохранять flow логи -->
<param name="datalog.flow.dir" value="data/flow" />
<!-- Размер блока данных в файле лога, также размер буфера на лог файл и поток слушателя -->
<param name="datalog.flow.chunk.size" value="524288" />
<!-- Сжимать flow логи: 0 - не сжимать, 1 - zlib -->
<param name="datalog.flow.compression.type" value="1" />


<!-- Создание Accounting -->
<bean name="accounting" class="ru.bitel.bgbilling.modules.inet.accounting.Accounting"/>


<!-- Cоздание процессора flow-пакетов -->
<context name="collector">
<!-- Служебный ScheduledExecutorService, необходимый для dataLogger -->
<scheduledExecutorService name="hrlydtlggr" corePoolSize="1"/>

<!-- Cоздание dataLogger, сохраняющего flow-пакеты на диск (только один экземпляр) -->
<bean name="flowDataLogger" class="ru.bitel.bgbilling.modules.inet.collector.IPHourlyDataLogger">
<param name="scheduledExecutor">hrlydtlggr</param>
</bean>

<!-- Cоздание слушателя flow-пакетов на порту с передачей ему dataLogger -->
<bean name="flowListener" class="ru.bitel.bgbilling.modules.inet.collector.InetFlowListener">
<constructor factoryMethod="newInstance">
<!-- Тип слушателя, netflow, netflow9 или sflow -->
<param name="type" value="netflow"/>
<!-- Хост (интерфейс), на котором будет открыт сокет. Если пусто - на всех -->
<param name="host" value=""/>
<!-- Порт, на котором будет открыт сокет -->
<param name="port" value="2002"/>
<!-- Размер буфера приема слушателя -->
<param name="recvBufferSize">4 * 1024 * 1024</param>
<!-- Рекомендуемый SO_RCVBUF сокета -->
<param name="soRCVBUF">512 * 1024</param>
<!-- Количество потоков-обработчиков -->
<param name="threadCount" value="10"/>
<!-- id устройств-источников, если на данном порту нужно получать пакеты только c определенных источников -->
<param name="agentDeviceIds" value=""/>
<!-- id устройств-источников, если на данном порту нужно обрабатывать пакеты только c определенных источников -->
<param name="processAgentDeviceIds" value=""/>
<!-- 1, если нужно запретить сохранять и обрабатывать пакеты, в которых нет записей с IP-адресами из IP-ресурсов -->
<param name="ipResourceFilter" value=""/>
<!-- Передача dataLogger -->
<param name="dataLogger">flowDataLogger</param>
</constructor>
</bean>

<!--
<bean name="flowListener" class="ru.bitel.bgbilling.modules.inet.collector.InetFlowListener">
<constructor factoryMethod="newInstance">
<param name="type" value="netflow9"/>
<param name="host" value=""/>
<param name="port" value="9367"/>
<param name="recvBufferSize">4 * 1024 * 1024</param>
<param name="soRCVBUF">512 * 1024</param>
<param name="threadCount" value="8"/>
<param name="agentDeviceIds" value="4"/>
<param name="dataLogger">flowDataLogger</param>
</constructor>
</bean>

<bean name="flowListener" class="ru.bitel.bgbilling.modules.inet.collector.InetFlowListener">
<constructor factoryMethod="newInstance">
<param name="type" value="netflow"/>
<param name="host" value=""/>
<param name="port" value="9368"/>
<param name="recvBufferSize">4 * 1024 * 1024</param>
<param name="soRCVBUF">512 * 1024</param>
<param name="threadCount" value="8"/>
<param name="agentDeviceIds" value="20"/>
<param name="dataLogger">flowDataLogger</param>
</constructor>
</bean>

-->

<!--
<bean name="snmpWorker" class="ru.bitel.bgbilling.modules.inet.accounting.InetSnmpWorker">
<constructor>
<param name="agentDeviceIds" value="" />
<param name="period" value="30" />
</constructor>
</bean>
-->


<context name="detail">
<!-- Cоздание обработчика flow детализации -->
<bean name="detailWorker" class="ru.bitel.bgbilling.modules.inet.accounting.detail.InetDetailWorker"/>
</context>
</context>
</application>


лог collector.log
12-06/12:14:08 INFO [hrlydtlggr-p-6-t-1] HourlyDataLoggerTracker - Checking data log files to close [hours=0]...

лог update.sh

./update.sh
Starting libraries update. Requesting BGBillingServer lib info.
12-06/12:11:09 INFO [main] DefaultServerSetup - Binding javax.jms.ConnectionFactory[org.apache.activemq.ActiveMQConnectionFactory@16fd0b7] to java:comp/env/mq/connectionFactory
12-06/12:11:09 INFO [main] DefaultServerSetup - Init DB connection pools
12-06/12:11:09 INFO [main] DefaultServerSetup - Binding JDBC pool "master" to java:comp/env/jdbc/master
12-06/12:11:09 INFO [main] DefaultServerSetup - Init trash pools..
mq 12-06/12:11:09 INFO [EventProcessor-init] EventProcessor - Init EventProcessor MQ connection factory...
06.12.2013 12:11:09 org.apache.activemq.transport.failover.FailoverTransport doReconnect
INFO: Successfully connected to tcp://xxxxxxxxx:61616
12-06/12:11:10 DEBUG [main] EventProcessor - Add ru.bitel.bgbilling.server.util.Setup$1@1d95da8 to BG.Event.ru.bitel.bgbilling.kernel.event.events.system.ModuleConfigModifiedEvent
mq 12-06/12:11:10 DEBUG [main] EventProcessor - Request, timeout 10000 : Event[bitel.billing.server.installer.event.GetLibrariesInfoEvent] moduleId: no; pluginId: no; cid: global; scid: -1; userId: -1; timestamp: -1
java.lang.NullPointerException
at bitel.billing.server.installer.library.LibraryUpdate.getLibrariesForUpdate(LibraryUpdate.java:93)
at bitel.billing.server.installer.library.LibraryUpdate.main(LibraryUpdate.java:118)
12-06/12:11:20 INFO [Thread-4] EventProcessor - Shutdown EventProcessor...

Автор:  van2002 [ 06 дек 2013, 10:20 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

версия java 1.6u45, биллинг и аккаунтинг сервер последние

Автор:  van2002 [ 06 дек 2013, 16:21 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

обновился, ntp выставил, но все равно не пишет.

collector.log:
12-06/18:11:17 INFO [main] AnnotatedMBean - Register MBean ru.bitel.bgbilling.server.util:type=DatabaseConnectionPool,name=master
12-06/18:11:17 INFO [main] DefaultServerSetup - Init trash pools..
12-06/18:11:20 INFO [main] InetFlowListener - Create new FlowListener netflow on port 2002 [recv_buf_size=4194304]
12-06/18:11:20 INFO [main] FlowAgentInterfaceSelector - Loaded sources: []
12-06/18:11:20 INFO [main] AnnotatedMBean - Register MBean ru.bitel.bgbilling.modules.inet.collector:type=InetNetflowListener
12-06/18:11:21 INFO [main] Application - Starting ru.bitel.bgbilling.modules.inet.collector.InetNetflowListener@ffc3eb [queue_size: 0; threads_active: 0; largest: 0; core: 10; pool_size: 0; recv_socket_buf_size: 90 112; recv_buf_size: 4 194 304; packets: 0]
12-06/18:11:21 INFO [main] DatagramChannelListener - Open socket [0.0.0.0/0.0.0.0:2002]
12-06/18:11:21 INFO [main] DatagramChannelListener - ru.bitel.bgbilling.modules.inet.collector.InetNetflowListener socket init ok.
12-06/18:11:21 INFO [main] Application - Started ru.bitel.bgbilling.modules.inet.collector.InetNetflowListener@ffc3eb [queue_size: 0; threads_active: 0; largest: 0; core: 10; pool_size: 0; recv_socket_buf_size: 180 224; recv_buf_size: 4 194 304; packets: 0]
12-06/18:19:20 INFO [hrlydtlggr-p-6-t-1] HourlyDataLoggerTracker - Checking data log files to close [hours=0]...

Автор:  Amir [ 06 дек 2013, 17:13 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

Может быть iptables блокирует? Порт 2002 вроде бы открывается нормально. Если бы пакеты приходили, что-нибудь в логах бы было.

Автор:  van2002 [ 09 дек 2013, 06:57 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

в том-то и дело, я вижу дампом на интерфейсе приходящие пакеты, но действий по ним никаких

Автор:  Amir [ 09 дек 2013, 16:49 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

Насколько помню, дамп работает до iptables. Т.е. видел такое, что в дампе пакеты видно, но не доходят, а виноват был iptables. Т.е. после service iptables stop сразу пошло получение пакетов.

Автор:  van2002 [ 10 дек 2013, 14:47 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere 192.168.1.52 tcp dpt:3389

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

зато выловил ошибку

accounting 12-10/08:41:44 ERROR [worker-p-10-t-1] InetLogProccessor - EROOR!!!!
ru.bitel.bgbilling.common.BGException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY day' at line 1 [42000, 1064]
at ru.bitel.common.model.AbstractDao.processException(AbstractDao.java:101)
at ru.bitel.common.model.AbstractDao.list(AbstractDao.java:246)
at ru.bitel.bgbilling.modules.inet.api.server.bean.DataProcessRecordDao.list(DataProcessRecordDao.java:89)
at ru.bitel.bgbilling.modules.inet.accounting.proccess.InetLogProccessor.readTasks(InetLogProccessor.java:447)
at ru.bitel.bgbilling.modules.inet.accounting.proccess.InetLogProccessor.process(InetLogProccessor.java:170)
at ru.bitel.bgbilling.modules.inet.accounting.proccess.InetLogProccessor.run(InetLogProccessor.java:155)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY day' at line 1
at sun.reflect.GeneratedConstructorAccessor37.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2624)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2127)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2293)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at ru.bitel.common.model.AbstractDao.listImpl(AbstractDao.java:221)
at ru.bitel.common.model.AbstractDao.listImpl(AbstractDao.java:234)
at ru.bitel.common.model.AbstractDao.list(AbstractDao.java:242)
... 14 more

Автор:  van2002 [ 10 дек 2013, 16:12 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

3432 Query SELECT * FROM inet_task_process_15 WHERE deviceId IN ( ) ORDER BY day

вот этот запрос некорректен

Автор:  van2002 [ 12 дек 2013, 06:28 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

up

Автор:  stark [ 15 янв 2014, 17:57 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

van2002 писал(а):
accounting 12-10/08:41:44 ERROR [worker-p-10-t-1] InetLogProccessor - EROOR!!!!
ru.bitel.bgbilling.common.BGException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY day' at line 1 [42000, 1064]
at ru.bitel.common.model.AbstractDao.processException(AbstractDao.java:101)
at ru.bitel.common.model.AbstractDao.list(AbstractDao.java:246)
at ru.bitel.bgbilling.modules.inet.api.server.bean.DataProcessRecordDao.list(DataProcessRecordDao.java:89)
at ru.bitel.bgbilling.modules.inet.accounting.proccess.InetLogProccessor.readTasks(InetLogProccessor.java:447)
at ru.bitel.bgbilling.modules.inet.accounting.proccess.InetLogProccessor.process(InetLogProccessor.java:170)
at ru.bitel.bgbilling.modules.inet.accounting.proccess.InetLogProccessor.run(InetLogProccessor.java:155)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:40)
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY day' at line 1
at sun.reflect.GeneratedConstructorAccessor37.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2624)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2127)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2293)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at ru.bitel.common.model.AbstractDao.listImpl(AbstractDao.java:221)
at ru.bitel.common.model.AbstractDao.listImpl(AbstractDao.java:234)
at ru.bitel.common.model.AbstractDao.list(AbstractDao.java:242)
... 14 more


Какая версия ? Ошибка еще есть ? У вас какая иерархия устройств? rooteDeviceId куда указывает ?

Автор:  skyb [ 15 янв 2014, 18:10 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

van2002 используйте тег [CODE] пожалуйста

Автор:  Eternity [ 26 янв 2014, 11:50 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

Аналогичная проблема... На этот же запрос ругается.

Автор:  stark [ 27 янв 2014, 15:45 ]
Заголовок сообщения:  Re: Не пишет логи netflow Accounting сервер

Eternity писал(а):
Аналогичная проблема... На этот же запрос ругается.



Какая версия ? У вас какая иерархия устройств? rooteDeviceId куда указывает ?

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/