BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 16 июн 2024, 03:44

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
СообщениеДобавлено: 25 июл 2016, 20:28 
Не в сети
Клиент

Зарегистрирован: 13 авг 2014, 11:29
Сообщения: 74
Карма: 0
в inet_connection_1 ipAdress начинается на ac10, каким запросом можно убить все сессии с такими ip ?

_________________
Клиент: вер. 6.2.825 / 10.06.2016 13:26:20
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_65
Сервер: вер. 6.2.1065 / 10.06.2016 13:27:43
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 25 июл 2016, 20:40 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Код:
package xxx.inet;

import ru.bitel.bgbilling.kernel.container.managed.ServerContext;
import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.modules.inet.api.common.service.InetServService;
import ru.bitel.bgbilling.modules.inet.api.common.service.InetSessionService;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class breakSessions
   extends GlobalScriptBase
   {
      static int INET_MID = 12; //ID модуля Inet
      
      @Override
      public void execute( Setup setup, ConnectionSet connectionSet )
         throws Exception
      {
         Connection con  = connectionSet.getConnection();
         ServerContext context = ServerContext.get();
         InetSessionService inetServ = context.getService(InetSessionService.class, INET_MID);
         
         int count = 0;
         
         print("Start");
         long timeStart = System.currentTimeMillis();
         String query =    " SELECT id FROM inet_connection_12 WHERE ipaddress BETWEEN UNHEX(CONV(INET_ATON('172.24.219.1'), 10, 16)) AND UNHEX(CONV(INET_ATON('172.24.255.255'), 10, 16)) AND STATUS = 1 ";

         PreparedStatement ps = con.prepareStatement( query );
         ResultSet rs = ps.executeQuery();
         while ( rs.next() )
         {
            count++;
            long sessionId = rs.getInt( 1 );
            inetServ.connectionClose(sessionId);
            //inetServ.connectionFinish(sessionId);
         }
         rs.close();
         ps.close();
         print("Сброшено " + count + " соединений");
         long timeEnd = System.currentTimeMillis();
         print( "Process time: " + (timeEnd - timeStart)/1000 + " s." );
      }
   }

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.093s | 20 Queries | GZIP : On ]