Páginas filhas
  • LOG_getInfoThreadBySID

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


Recupera as informações da Thread  referente ao usuário/programa utilizando o SID atual da última execuçãoPermite recuperar algumas informações referente a uma determinada sessão de usuário em execução, utilizando o SID e data e hora de conexão da sessão Logix no banco de dados, tais como:

  • 1 - Login de usuário Logix;
  • 2 - programa em execução;
  • 3 - origem da execução *;
  • 4 - IP do servidor (AppServer);
  • 5 - porta do servidor (AppServer)
  • 6 - id da thread em execução do programa em execução e observações)

...

borderColor#FFFFFF
bgColor#F5F5DC
borderWidth4
borderStylegroove
  • Código do programa
  • Origem da execução
  • IP e porta do Appserver onde está executando a sessão
  • Número da thread de identificação no Appserver

* ORIGEM (opcao 3)

Para a opção 3 existem algumas variações de informações, conforme apresentado abaixo:

...

Sintaxe

Bloco de código
LOG_getInfoThreadBySID( < l_sid >,< l_dat_hor_sid >,< l_info> ) => INTEGERCHAR

Parâmetros

Nome

Tipo

Obrigatório?

Descrição

l_sid 

CHAR

Sim

SID ativo na execução atual.

l_dat_hor_sid 

CHAR

Sim

Data e hora de criação do SID.

l_info
SMALLINT

Sim

Valor correspondente a Código de identificação da informação que se deseja resgatarrecuperar:

#1-Usuário
#2-Programa
#3-Origem da execução (Para mais detalhes acesse Observações)
#4-Server (IP )do AppServer
#5-Server (PORT)Porta do AppServer 
#6-ThreadID
#7-Observações (Informações adicionais que podem estar registradas para algumas sessões)

Retorno

Tipo

Descrição

ARRAY OF CHAR

Lista das informações Informações solicitadas conforme a variável "o valor informado para o parâmetro l_info".

Exemplo

Bloco de código
languageruby
themebashConfluence
linenumberstrue
 	DEFINE l_sid 			INTEGER
	DEFINE #---------------------------------------------------------#
 FUNCTION LOG_getInfoThreadBySID_test(l_sid,l_dat_hor_sid	DATETIME YEAR TO SECOND
	DEFINE l_usuario 		CHAR(008)

	LET l_sid               = DBINFO_getInfoSID() 
	LET)
#---------------------------------------------------------#
{Parâmetros:
   l_sid - SID da sessão Logix desejada, que pode ser recuperado a partir do banco de dados, monitor de AppServer.
   l_dat_hor_sid - Data/hora de conexão do SID da sessão Logix desejada. 
}
 	DEFINE l_sid 			INTEGER
	DEFINE l_dat_hor_sid	DATETIME YEAR 		= DBINFO_getInfoLoginTimeTO SECOND
	DEFINE l_retorno        CHAR(100)

	#Recupera login do usuário Logix que está executando a sessão Logix
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,1)
	CALL conout("O usuário Logix da sessão é "||l_usuarioretorno CLIPPED)

	#Recupera programa que oestá usuárioem queexecução está executandona a sessão Logix
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,2)
	CALL conout("O programa Logix da sessão é "||l_usuarioretorno CLIPPED)

	#Recupera a origem de execução que está executando a da sessão Logix
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,3)
	CALL conout("A origem da sessão do usuário é "||l_usuarioretorno CLIPPED)

	#Recupera o IP do servidorAppServer onde doa usuáriosessão queLogix está executando a sessão Logixem execução
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,4)
	CALL conout("O IP do servidor da sessão é "||l_usuarioretorno CLIPPED)

	#Recupera a porta do servidorAppServer utilizadaonde peloa usuáriosessão queLogix está executando a sessão Logixem execução
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,5)
	CALL conout("A porta que o usuário está utilizando no servidor do Appserver da sessão é "||l_usuarioretorno CLIPPED)

	#Recupera login do usuário Logixo número da Thread no AppServer que está em executandoexecução para a sessão Logix
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,6)
	CALL conout("O ID usuárioda LogixThread da sessão é "||l_usuarioretorno CLIPPED)

	#Recupera aobservações Threadadicionais em execução do usuárioda sessão que está executandoem aexecução sessãono Logix
	LET l_usuarioretorno = LOG_getInfoThreadBySID(l_sid,l_dat_hor_sid,7)
	CALL conout("A Thread do usuário LogixObservações adicionais da sessão é "||l_usuarioretorno CLIPPED)

END FUNCTION

Informações

Fontes: log0010.4gl

Âncora
Observacoes
Observacoes
Observações

Para obter o código do SID e data e hora de conexão de uma execução em andamento, por exemplo, pode usar as seguintes funções:

   DBINFO_getInfoSID() → Para recuperar o código SID de conexão de banco de dados da execução do programa/rotina atual.

   DBINFO_getInfoLoginTime() → Para recuperar a data/hora de conexão de banco de dados da execução do programa/rotina atual.


A informação de valor 3 (Origem da execução) pode retornar qualquer um dos dados a seguir:

  • Nome e número de IP da máquina de usuário.   Formato: {nome máquina usuário}:{IP usuário}
  • JOB.  Indica que a execução é modo JOB a partir de outra aplicação.
  • SCHEDULER.  Indica que a execução é modo JOB a partir do agendador de tarefas.
  • COLETOR.  Indica que a execução é a partir do menu de COLETOR de dados Logix (Programa MEN3001 - interface TELNET).
  • TELNET.  Indica que é uma execução avulsa a partir da interface TELNET.