cciUserTrace

Grava uma mensagem de um catálogo de mensagens (com inserções) para rastreio do usuário. Uma mensagem também é gravada no rastreio de serviço, se ele estiver ativo.

A mensagem gravada no rastreio do usuário possui o seguinte formato:

<stamp date-time> <Número_da_cadeia> Rastreio_do_Usuário <Texto de mensagem com inserções> <Explicação da Mensagem>

Sintaxe

void cciUserTrace(
  int*              returnCode,
  CciObject*        object,
  const CciChar*    messageSource,
  int               messageNumber,
  const char*       traceText,
                    ...
);

Parâmetros

returnCode
Recebe o código de retorno da função (saída).Um entrada de ponteiro NULL significa que o nó definido pelo usuário não irá lidar com erros. Quaisquer exceções lançadas durante a execução desta chamada serão lançadas novamente para o próximo nó acima no fluxo. Se a entrada não for NULL, a saída significará o status de êxito da chamada. Se uma exceção ocorrer durante a execução, *returnCode será definido como CCI_EXCEPTION na saída. Uma chamada para CciGetLastExceptionData fornecerá detalhes da exceção.
object
O endereço do objeto que deve ser associado à entrada de rastreio (entrada). Esse objeto pode ser um CciNode* ou um CciParser*. Se for um CciNode*, o nome desse nó será gravado no rastreio. Se for um CciParser*, o nome do nó que criou o analisador será gravado no rastreio. Esse objeto também é utilizado para determinar se a entrada deve ser escrita no rastreio. A entrada apenas será escrita, se o rastreio estiver ativo para o nó. Atualmente, os nós herdam a configuração do rastreio a partir do fluxo de mensagens.
Se este parâmetro for NULL, o nível de rastreio para o grupo de execução será retornado.
messageSource
Uma cadeia que identifica a origem da mensagem do Windows ou o catálogo de mensagens do Linux e do UNIX (entrada). Quando o rastreio é formatado, uma mensagem da versão NLS desse catálogo é escrita. O código do idioma utilizado é esse do ambiente, no qual o rastreio é formatado. É possível executar o intermediário em um tipo de plataforma, ler o registro dessa plataforma e, em seguida, formatar o registro em uma plataforma diferente. Por exemplo, se o intermediário estiver sendo executado no Linux ou UNIX mas não houver nenhum arquivo .cat disponível, o usuário poderá ler o registro e, em seguida, transferi-lo para o Windows, onde o registro pode ser formatado utilizando o arquivo .properties.
Se este parâmetro for NULL, o resultado será o mesmo que a especificação de uma cadeia vazia. Ou seja, todas as demais informações serão gravadas no registro e o campo do catálogo terá um valor de cadeia vazia. Portanto, o formatador de registro não conseguirá localizar a origem da mensagem. Conseqüentemente, o formatador do registro falhará ao formatar essa entrada.
messageNumber
O número que identifica a mensagem dentro do messageSource especificado (entrada). Se o messageSource não contiver uma mensagem que corresponde a esse messageNumber, então, o formatador de registro falhará ao formatar essa entrada.
traceText
Uma cadeia de caracteres que termina com NULL (entrada). Essa cadeia será gravada no rastreio de serviço e fornecerá uma maneira fácil de correlacionar as entradas de rastreio com os caminhos através do código-fonte. Por exemplo, pode haver vários caminhos por meio do código que resultam na mesma mensagem (messageSource e messageNumber) sendo gravada no rastreio. traceText pode ser utilizado para distinguir entre esses caminhos diferentes. Isto é, a cadeia traceText será uma cadeia literal estática na origem e, portanto, a mesma cadeia será no arquivo de código-fonte e no arquivo de rastreio formatado.
...
Uma lista de argumentos variáveis em C contendo quaisquer inserções de mensagem que acompanham a mensagem (entrada). Essas inserções são tratadas como cadeias de caracteres, e os argumentos variáveis são considerados como sendo do tipo pointer to char.
O último argumento nesta lista precisa ser (char*)0.
  • Para obter extensões definidas pelo usuário sendo executadas em plataformas distribuídas, os argumentos char* devem estar na página de códigos ISO-8859-1 (ibm-918).
  • Para obter extensões definidas pelo usuário sendo executadas em plataformas Z/OS, os argumentos char* devem estar em EBCIDIC (1047).
Isso inclui todos os argumentos char* em traceText e a lista de argumentos de variáveis de inserções (...).

Valores de Retorno

Nenhum. Se ocorrer um erro, o parâmetro returnCode indica o motivo do erro.

Exemplo

const CciChar* 		myMessageSource=CciString("SwitchMSG",BIP_DEF_COMP_CCSID);
CciNode* thisNode = ((NODE_CONTEXT_ST*)context)->nodeObject;

cciUserTrace(&rc,
             (CciObject*)thisNode,
              myMessageSource,
              1,
              "propagating to add terminal",
              "add",
              (char*)0);
     checkRC(rc);
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
as24500_