Каким скриптом «почистить» или вычитать все pipe ы 
	   
	     | 
   
 
	
		| Предыдущая тема :: Следующая тема   | 
	 
	
	
		| Автор | 
		Сообщение | 
	 
	
		Матвеев Евгений Профи
 
  Вступление в Клуб: 31.01.2012
  | 
		
			
				 Пт Сен 16, 2016 14:31   Каким скриптом «почистить» или вычитать все pipe ы | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				Каким скриптом "почистить" или вычитать все pipe ы?
 
...Можно как то по неименному пайпу определить какая операция(или запись в справочнике включения отладки) данные в него кладет? | 
			 
		  | 
	 
	
		  | 
	 
	
		Alkov Профи
 
  Вступление в Клуб: 23.09.2010
  | 
		
			
				 Пн Сен 19, 2016 05:37    | 
				     | 
			 
			
				Полезность: 2 
  | 
			 
			
				dbms_pipe.reset_buffer;  
 
?
 
или как-н так...
 
					var v varchar2(32767);
 
					loop
 
						v := RTL.get_debug_text(rtl.DEBUG2PIPE);
 
  						if trim(v) is null then
 
							exit;
 
  						end if;
 
					end loop; | 
			 
		  | 
	 
	
		  | 
	 
	
		kai Профи
 
  Вступление в Клуб: 16.08.2012
  | 
		
			
				 Пт Окт 07, 2016 05:28   Re: Каким скриптом «почистить» или вычитать все pi | 
				     | 
			 
			
				Полезность: 3 
  | 
			 
			
				 	  | Матвеев Евгений пишет: | 	 		  Каким скриптом "почистить" или вычитать все pipe ы?
 
...Можно как то по неименному пайпу определить какая операция(или запись в справочнике включения отладки) данные в него кладет? | 	  
 
 
Если сессия зарегистрирована в системе, то имя пайпы (например, 'DEBUG$017A1B850001') будет содержать подстроку "DEBUG$" а далее hex-число - вот по нему и можно найти инфу через запрос:
 
 
 	  | Код: | 	 		  select s.username
 
     ,s.osuser
 
     ,s.machine
 
     ,s.sid
 
     ,s.SERIAL#
 
     ,s.client_info
 
     ,s.status
 
     ,s.module
 
     ,s.program
 
     ,s.action
 
     ,TO_CHAR(s.logon_time, 'DD/MM HH24:MI') LT
 
     ,s.AudSid
 
     ,p.spid
 
  from v$session s, v$process p
 
 WHERE p.addr(+) = s.paddr
 
   AND exists (select null
 
        from IBS.users u
 
       where u.type = 'U'
 
         and u.username = s.username
 
           )
 
   AND s.client_info='017A1B850001'
 
;
 
 | 	  
 
 
p.s. Запрос этот подсматриваем в "Администраторе словаря данных" в Меню | Словарь | Сервер | Сессии (где предварительно в "Меню | Управление | Настройка логирования" включаем отладку )
 
 
А чистить можно через DBMS_PIPE.REMOVE_PIPE:
 
 
 	  | Код: | 	 		  
 
    j integer;
 
    k integer := 0;
 
begin
 
    for    (    select i( i.name : name )
 
                    in    v$db_pipes%rowtype
 
                where    i.name  not like 'LOCK%'
 
                    and    i.name not like '%CACHE%'
 
            )
 
    loop
 
        j := 0;
 
        while j = 0 loop
 
            j := DBMS_PIPE.RECEIVE_MESSAGE(i.name, 0);
 
        end loop;
 
        DBMS_PIPE.REMOVE_PIPE(i.name);
 
        k := k + 1;
 
    end loop;
 
    stdio.put_line_buf('обработано '||k||' пайп');
 
end;
 
 | 	 
 
  Последний раз редактировалось: kai (Вт Окт 11, 2016 05:16), всего редактировалось 1 раз | 
			 
		  | 
	 
	
		  | 
	 
	
		budinva Участник - экстремал
 
  Вступление в Клуб: 15.01.2008
  | 
		
			
				 Пт Окт 07, 2016 11:56    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				| Задания по расписанию SYSTEM_JOBS.PIPES_REFRESH | 
			 
		  | 
	 
	
		  | 
	 
	
		Матвеев Евгений Профи
 
  Вступление в Клуб: 31.01.2012
  | 
		
			
				 Пт Окт 07, 2016 13:49    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				USERNAME	OSUSER	MACHINE	SID	SERIAL#	CLIENT_INFO	STATUS	MODULE	PROGRAM	ACTION	LT	AUDSID	SPID
 
1	IBS	XXXXX	XXXX\XXXXXXXX	928	5882	03A016FA0001	ACTIVE	Автоматизированное рабочее место	NovoXXX_XX.exe	11:49:Nav.Execute 2407982339	07/10 10:25	137675359	10671
 
 
Приходят данные подобного вида, я так понял, информацию по операциям так не получить... Это так? | 
			 
		  | 
	 
	
		  | 
	 
	
		vtar Эксперт
 
  Вступление в Клуб: 20.03.2009
  | 
		
			
				 Пт Окт 07, 2016 15:21    | 
				     | 
			 
			
				Полезность: 1 
  | 
			 
			
				Nav.Execute 2407982339
 
 
а это не ID ли из methods ? | 
			 
		  | 
	 
	
		  | 
	 
	
		Матвеев Евгений Профи
 
  Вступление в Клуб: 31.01.2012
  | 
		
			
				 Пт Окт 07, 2016 15:39    | 
				     | 
			 
			
				Полезность: Нет оценки 
  | 
			 
			
				 	  | vtar пишет: | 	 		  Nav.Execute 2407982339
 
 
а это не ID ли из methods ? | 	  
 
 
Бинго
 
 
 	  | Код: | 	 		  
 
select * from methods a where a.id = '2407982339'
 
 | 	  
 
 
 
   	CLASS_ID	BODY_SELECT	BODY_WHERE	ID	SHORT_NAME	NAME	USER_DRIVEN	ACCESSIBILITY	RESULT_CLASS_ID	BODY	FLAGS	TEXT_TYPE	CONDITION	DEF	PROPAGATE	PACKAGE_NAME	CREATED	USER_CREATED	MODIFIED	USER_MODIFIED	OBJECTS_RIGHTS	STATUS	HIERARCHY_ATTR	REPORT_CLASS_ID	REPORT	FORMULA	HINTS	KERNEL	PROPERTIES	REPORT_OBJECT	REPORT_ON_PROC	REPORT_TYPE	ACCESS_GROUP	DEF_DESTRUCTOR	SCRIPT_ID	TAG	FORM_ID	BELONG_GROUP	CHECK_METHOD	EXT_ID	SRC_ID
 
1	CERT_INVALID			2407982339	IMPORT_FMS	Èìïîðò íåäåéñòâèòåëüíûõ ïàñïîðòîâ, ïîëó÷åííûõ èç ÔÌÑ	1	0			S	1				Z$CERT_INVALID_IMPORT_FMS	22/07/2015 9:26:57	mbondar	31/03/2016 14:47:35	xxxxxxx		VALID					CCEBE22B9034DB7B67DA9E98ED27CBF7.EA905245924511379B97BA12657D5D3D	0	|ARCHPACK 0|BUF |CMD N|COMMIT N|COMPILER 01111011101110FF0000|CREATE N|CRITICAL N|DEFHOTKEY N|EMPTY_ID N|FOCUS_VALIDATE 0|HOTKEY 473|IPIPE |LOAD_VALIDATE 0|OPIPE |PARAMS N|PRIORITY 100|REFRESH N|RTLBASE 1949001|RUN_MON Y|SHARE N|STREAM N|							COPIED | 
			 
		  | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
	 
	    
	   | 
	
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
  | 
   
 
		 |