forum.bitel.ru http://forum.bitel.ru/ |
|
session_detail http://forum.bitel.ru/viewtopic.php?f=5&t=5783 |
Страница 1 из 1 |
Автор: | anred [ 10 авг 2011, 19:25 ] |
Заголовок сообщения: | session_detail |
Вопрос к разработчикам если бахнуть session_detail и запустить обсчет сессий данные в этой таблице востоновятся или нет ?) |
Автор: | anred [ 10 авг 2011, 19:40 ] |
Заголовок сообщения: | Re: session_detail |
просто был написан скриптик который востонавливает информацию из log_server в log_session |
Автор: | stark [ 12 авг 2011, 09:26 ] |
Заголовок сообщения: | Re: session_detail |
anred писал(а): Вопрос к разработчикам если бахнуть session_detail и запустить обсчет сессий данные в этой таблице востоновятся или нет ?) Нет . Им неоткуда браться . Такое возможно в модуле inet - там хранятся первичные логи (radius-пакеты). |
Автор: | anred [ 12 авг 2011, 12:19 ] |
Заголовок сообщения: | Re: session_detail |
тоесть я захожу в базу зачищаю таблицы согласно ману http://wiki.bgbilling.ru/index.php/%D0%9F%D0%B5%D1%80%D0%B5%D1%81%D1%87%D0%B5%D1%82_%D1%82%D1%80%D0%B0%D1%84%D0%B8%D0%BA%D0%B0_%D0%BF%D0%BE_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%BC_Radius_%28%D0%BF%D1%80%D0%B8_%D0%BF%D0%BE%D1%82%D0%B5%D1%80%D1%8F%D0%BD%D0%BD%D1%8B%D1%85_Netflow-%D0%BB%D0%BE%D0%B3%D0%B0%D1%85%29 session_detail_MID_YYYYMM log_session_MID_YYYYMM запускаю свой скриптик который переносит инфу из log_server_MID_YYYYMM и потом переобсчет netflow |
Автор: | stark [ 15 авг 2011, 13:02 ] |
Заголовок сообщения: | Re: session_detail |
anred писал(а): тоесть я захожу в базу зачищаю таблицы согласно ману ... session_detail_MID_YYYYMM log_session_MID_YYYYMM запускаю свой скриптик который переносит инфу из log_server_MID_YYYYMM и потом переобсчет netflow Про этот способ я забыл .Да, можно так |
Автор: | anred [ 15 авг 2011, 21:56 ] |
Заголовок сообщения: | Re: session_detail |
если в log_session_MID_YYYYMM поле id сделать автоинкрементным как к этому отнесется биллинг ?) |
Автор: | snark [ 15 авг 2011, 22:16 ] |
Заголовок сообщения: | Re: session_detail |
Он же там по дефолту такой: Код: CREATE TABLE log_session_1_201108 (
id int(11) NOT NULL AUTO_INCREMENT, ... PRIMARY KEY (id), ... ); |
Автор: | anred [ 16 авг 2011, 23:01 ] |
Заголовок сообщения: | Re: session_detail |
ага не заметил =) ладно буду пробовать скриптинку чуть позже выложу если все ок! |
Автор: | anred [ 19 авг 2011, 11:48 ] |
Заголовок сообщения: | Re: session_detail |
Код: <?php $day = "08"; $db_host = "IP"; $db_database = "bgbilling"; $db_user = "root"; $db_password = "PASS"; $db_connect=mysql_connect($db_host,$db_user,$db_password) or die(mysql_error()); mysql_select_db($db_database,$db_connect) or die(mysql_error()); $table = 'log_server_3_201108'; $mass = ''; $query = mysql_query("SELECT * FROM `$table` WHERE `requests` LIKE '\n$day %'") or die(mysql_error()); while($r = mysql_fetch_array($query)){ $id = $r[0]; $requests = $r[1]; if (strpos($requests, 'Acct-Session-Time')){ $requests = explode ("\n", $requests); $start = 0; foreach ($requests as $key => $val){ if ($start == 1){ if (trim($val) != ''){ $temp = explode('=',$val); if (isset($temp[1])) if ((trim($temp[0]) != 'CHAP-Password') or (trim($temp[1]) != '')) $attrib[$id][trim($temp[0])] = $temp[1]; } else{ $start = 0; } } if (ereg("([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})", $val, $regs)) $attrib[$id]['date'] = $val; if (strpos($val, 'Attributes') !== false) $start = 1; } } } ///////////////////////////////////////////////////////////////////////////////////////////// $table2 = 'log_session_3_201108'; foreach ($attrib as $key => $val){ $q = mysql_query("SELECT * FROM user_alias_3 WHERE login_alias = '{$val['User-Name']}'"); if (mysql_num_rows($q) > 0 ) { $r = mysql_fetch_array($q); $lid = $r[0]; $login_name = $r[1]; } else{ } if ($val['NAS-IP-Address'] == "94.X.X.X"){ $nas_id = "8"; } elseif ($val['NAS-IP-Address'] == "94.X.X.X") { $nas_id = "3"; } elseif ($val['NAS-IP-Address'] == "95.X.X.X") { $nas_id = "11"; } elseif ($val['NAS-IP-Address'] == "94.X.X.X") { $nas_id = "1"; } elseif ($val['NAS-IP-Address'] == "94.100.88.2") { $nas_id = "10"; } elseif ($val['NAS-IP-Address'] == "94.100.90.30") { $nas_id = "9"; } $nas_por = $val['NAS-Port']; $session_id = $val['Acct-Session-Id']; $session_start = '2011-08-'.$val['date']; $day = explode(' ', $val['date']); $time = @explode(':', $day[1]); $session_stop = date("Y-m-d H:i:s", mktime($time[0], $time[1], $time[2], 8, $day[0], 2011) + $val['Acct-Session-Time']); $session_time = $val['Acct-Session-Time']; $session_cost = 0.00000; $from_number = $val['Calling-Station-Id']; $to_number = ''; $input_octets = $val['Acct-Input-Octets']; $output_octets = $val['Acct-Output-Octets']; $status = 1; $lr = $key; $ipaddr = $val['Framed-IP-Address']; $sid_time = 13; $fake = 0; mysql_query("INSERT INTO $table2 SET id = '', lid = '$lid', nas_id = '$nas_id', nas_port = '$nas_por', session_id = '$session_id', session_start = '$session_start', session_stop = '$session_stop', session_time = '$session_time', session_cost = '$session_cost', from_number = '$from_number', to_number = '$to_number', input_octets = '$input_octets', output_octets = '$output_octets', status = '$status', lr = '$lr', ipaddr = INET_ATON('$ipaddr'), login_name = '$login_name', sid_time = '$sid_time', fake = '$fake' "); } ?> может кому пригодится ) |
Автор: | max [ 19 авг 2011, 16:55 ] |
Заголовок сообщения: | Re: session_detail |
в викки! |
Автор: | snark [ 22 авг 2011, 17:01 ] |
Заголовок сообщения: | Re: session_detail |
max писал(а): в викки! Вот это??? anred писал(а): Код: <?php ... mysql_query("SET NAMES utf8"); ... ?> Пожалуйста, скажите что Вы шутите. |
Автор: | anred [ 23 авг 2011, 15:07 ] |
Заголовок сообщения: | Re: session_detail |
Пережитки прошлого скрипта не удалил забыл ) да и не суть важно! работать всеравно будет ! русского нет в таблице и кодировка не поедит! но всеравно поправлю! |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |