1 Reply Latest reply: Dec 7, 2011 2:33 PM by MichaelT RSS

    Local Attributes of the T_SERVER Class

    MichaelT
      What's the secret to getting the attributes listed as "local" in the MIB doc? I have some simple code to do GETs and then dump the contents of the receive buffer. Everything works nicely except I can't seem to get any of the "local" T_SERVER Attributes. I have tried setting the MIB_LOCAL flag. I have tried specifying the local attributes in a filter. All to no avail.

      This snippet...

      FBFR32* fmlbuf;
      if ((fmlbuf = (FBFR32*)tpalloc("FML32", NULL, 10000)) == NULL)
      {
      cerr<<"ERROR: mibget: tpalloc: "<<tpstrerror(tperrno)<<endl;
      return;
      }
      if (Finit32(fmlbuf, Fsizeof32(fmlbuf)) == -1)
      {
      cerr<<"ERROR: mibget: Finit32: "<<Fstrerror32(Ferror32)<<endl;
      tpfree((char*)fmlbuf);
      return;
      }

      Fchg32(fmlbuf, TA_OPERATION, 0, "GET", 0);
      Fchg32(fmlbuf , TA_FLAGS, 0, (char*)MIB_LOCAL, 0);
      Fchg32(fmlbuf, TA_CLASS, 0, (char*)tclass.c_str(), 0);

      long len = -1;
      if (tpcall(".TMIB", (char*)fmlbuf, (long)0, (char**)&fmlbuf, (long*)&len, (long)0) == -1)
      {
      cerr<<"ERROR: "<<tclass.c_str()<<": tpcall: Error "<<tperrno<<" "<<tpstrerror(tperrno)<<endl;
      tpfree((char*)fmlbuf);
      return;
      }

      string path = "c:\\temp\\";
      path.append(tclass);
      path.append(".log");
      FILE* f = fopen(path.c_str(), "a");
      Ffprint32(fmlbuf, f);
      fclose(f);
      tpfree((char*)fmlbuf);

      Prints the following 38 fields for each server occurrence when tclass=T_SERVER...

      TA_BASESRVID     1
      TA_GRPNO     30002
      TA_MAX     1
      TA_MAXGEN     0
      TA_MIN     1
      TA_PID     6256
      TA_RPID     1537
      TA_RPPERM     432
      TA_RQID     1537
      TA_RQPERM     432
      TA_SEQUENCE     0
      TA_TIMERESTART     1322356429
      TA_TIMESTART     1322356429
      TA_MINDISPATCHTHREADS     0
      TA_THREADSTACKSIZE     0
      TA_MAXQUEUELEN     -1
      TA_SRVID     0
      TA_MAXEJBCACHE     0
      TA_EJBCACHE_FLUSH     0
      TA_CLASS     T_SERVER
      TA_STATE     ACTIVE
      TA_CLOPT     
      TA_CONV     N
      TA_ENVFILE     
      TA_RCMD     
      TA_REPLYQ     N
      TA_RESTART     Y
      TA_RQADDR     43349
      TA_SERVERNAME     c:\\Oracle\\tuxedo11gR1_VS2010\\bin\\BBL.exe
      TA_SYSTEM_ACCESS     FASTPATH
      TA_SEC_PRINCIPAL_NAME     
      TA_SEC_PRINCIPAL_LOCATION     
      TA_SEC_PRINCIPAL_PASSVAR     
      TA_SICACHEENTRIESMAX     0
      TA_LMID     SLC00FDG
      TA_SRVGRP     
      TA_SRVTYPE     
      TA_CONCURR_STRATEGY     


      Oracle Tuxedo, Version 11.1.1.2.0 with VS2010, 64-bit, Patch Level (none) running on Microsoft Windows Server 2008 R2 Enterprise 6.1.7601 Service Pack 1 Build 7601.

      What am I missing?