forum.bitel.ru http://forum.bitel.ru/ |
|
Узнать кто использовал динамический адрес http://forum.bitel.ru/viewtopic.php?f=44&t=6244 |
Страница 1 из 1 |
Автор: | Дмитрий [ 20 дек 2011, 11:54 ] |
Заголовок сообщения: | Узнать кто использовал динамический адрес |
Добрый день. Подскажите как узнать кто сидел под неким адресом (динамический пул) в заданное время или вообще кто сидел под неким адресом? Через поиск в модуле либо статику ищет, либо не понятно вообще что ищет ![]() |
Автор: | Phricker [ 20 дек 2011, 12:18 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
Не работал с модулем Inet, но в DialUp ищу вот так Код: select * from log_session_201112 where inet_ntoa(ipaddr) like '192.168.0.1'
|
Автор: | Дмитрий [ 20 дек 2011, 12:26 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
Phricker писал(а): Не работал с модулем Inet, но в DialUp ищу вот так Код: select * from log_session_201112 where inet_ntoa(ipaddr) like '192.168.0.1' Это хорошо, если мне самому нужно, но не у всех есть доступ к мусклю, может все же есть штатные способы ![]() |
Автор: | Cromeshnic [ 20 дек 2011, 14:10 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
Отчет сделать. Я делал такой для поиска по mac-адресу. |
Автор: | max [ 21 дек 2011, 21:42 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
а примерчего в студию? |
Автор: | Cromeshnic [ 22 дек 2011, 06:31 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
Для диалапа: dialup_csv_session_by_mac.rep.xml Код: <?xml version="1.0" encoding="UTF-8"?> <report title="Сессии по мак-адресу" type="java"> <month name="month" title="Месяц"/> <textField name="mac" title="Мак-адрес" textAfter="формат: 4567.890a.bcde"/> <fields> <item id="id" title="id"/> <item id="lid" title="login id"/> <item id="login" title="login"/> <item id="ip" title="IP"/> <item id="nas_id" title="NAS id"/> <item id="nas_port" title="NAS port"/> <item id="session_id" title="session id"/> <item id="session_start" title="start"/> <item id="session_stop" title="stop"/> <item id="session_time" title="time"/> <item id="input_octets" title="input octets"/> <item id="output_octets" title="output octets"/> </fields> </report> dialup_csv_session_by_mac.java Код: import java.sql.*;
import java.util.*; import java.util.regex.*; import java.sql.*; import bitel.billing.server.util.*; import bitel.billing.server.contract.bean.*; import bitel.billing.common.*; public void fillReport( con, filter, bitel.billing.server.reports.BGCSVReport.ReportResult result) { Calendar month = filter.getCalendarParam("month"); int mid = filter.getIntParam("mid"); String mac = filter.getStringParam("mac"); query = "select "+ "id, "+ "lid, "+ "login_name login, "+ "nas_id, "+ "nas_port, "+ "session_id, " + "session_start, " + "session_stop, " + "session_time," + "from_number, " + "input_octets, " + "output_octets, " + "INET_NTOA(ipaddr) ip " + "from " + Utils.getMonthTableName("log_session_"+mid,month.getTime()) + " where "+ "from_number = TRIM(\""+mac+"\") "; ps = con.prepareStatement( query ); rs = ps.executeQuery(); data = new ArrayList(rs.getFetchSize()); while( rs. next() ) { id = rs.getString("id"); lid = rs.getString("lid"); login = rs.getString("login"); nas_id = rs.getString("nas_id"); nas_port = rs.getString("nas_port"); session_id = rs.getString("session_id"); session_start = rs.getString("session_start"); session_stop = rs.getString("session_stop"); session_time = rs.getString("session_time"); input_octets = rs.getString("input_octets"); output_octets = rs.getString("output_octets"); ip = rs.getString("ip"); map = new HashMap(); map.put( "id", id ); map.put( "lid", lid ); map.put( "login", login ); map.put( "nas_id", nas_id ); map.put( "nas_port", nas_port ); map.put( "session_id", session_id ); map.put("session_start", session_start ); map.put("session_stop", session_stop ); map.put("session_time", session_time ); map.put("input_octets", input_octets ); map.put("output_octets", output_octets ); map.put("ip", ip ); data.add( map ); } result.setData( data ); } |
Автор: | Artur [ 22 дек 2011, 09:12 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
Cromeshnic писал(а): Для диалапа: dialup_csv_session_by_mac.rep.xml Код: <?xml version="1.0" encoding="UTF-8"?> <report title="Сессии по мак-адресу" type="java"> <month name="month" title="Месяц"/> <textField name="mac" title="Мак-адрес" textAfter="формат: 4567.890a.bcde"/> <fields> <item id="id" title="id"/> <item id="lid" title="login id"/> <item id="login" title="login"/> <item id="ip" title="IP"/> <item id="nas_id" title="NAS id"/> <item id="nas_port" title="NAS port"/> <item id="session_id" title="session id"/> <item id="session_start" title="start"/> <item id="session_stop" title="stop"/> <item id="session_time" title="time"/> <item id="input_octets" title="input octets"/> <item id="output_octets" title="output octets"/> </fields> </report> dialup_csv_session_by_mac.java Код: import java.sql.*; import java.util.*; import java.util.regex.*; import java.sql.*; import bitel.billing.server.util.*; import bitel.billing.server.contract.bean.*; import bitel.billing.common.*; public void fillReport( con, filter, bitel.billing.server.reports.BGCSVReport.ReportResult result) { ..... query = "select "+ "id, "+ "lid, "+ "login_name login, "+ "nas_id, "+ "nas_port, "+ "session_id, " + "session_start, " + "session_stop, " + "session_time," + "from_number, " + "input_octets, " + "output_octets, " + "int_to_ip(ipaddr) ip " + "from " + Utils.getMonthTableName("log_session_"+mid,month.getTime()) + " where "+ "from_number = TRIM(\""+mac+"\") "; ...... } Сурово вы строку запроса формируете =) |
Автор: | Cromeshnic [ 22 дек 2011, 10:00 ] |
Заголовок сообщения: | Re: Узнать кто использовал динамический адрес |
Зато наглядно ![]() Всё равно оно должно оптимизироваться... |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |