Tuxedo process IPC queue monitoring

Hi
This question is aimed mostly at Oracle techies who have experience supporting Tuxedo sites.
We've been developing on Tuxedo for a couple of years now and are about to go live with a Tuxedo based transactional system.
Throughout the development and testing phase it has become pretty apparent to us that we need to be able to keep an eye on IPC request queues for processes running under Tuxedo.
For example, we have 10 instances of server "A" running within Tuxedo. As long as these ten instances can cope with the load, we are getting good end-to-end response times. When we overload the system whereby our requests start being queued up on IPC queues for these processes, quite predictably our end-to-end response times go up. We would like to get an early warning when situations like this occur.
Sometimes there are obvious reasons for this behaviour (i.e. we're sending more requests per seconds than our application can cope with) and at other times, it is a degradation in performance of a downstream process (e.g. database query taking longer and longer to return as time goes by) that is causing our requests to start backlogging. It is this latter scenario that we would like to be alerted to before our clients ring us up to tell us that our service is not performing as well as it should.
However, there seems to be a distinct lack of importance placed on server request queue monitoring within Tuxedo infrastructure and API set. Perhaps we are missing something obvious?
We would like to be able to have a more proactive monitoring and reporting facility in place to help us observe queuing behaviour. It seems that there are two ways to obtain any queuing diagnostics:
1) Use a shell script to call tmadmin/pq from time to time to take snapshots or use OS commands to monitor IPC queues
2) Use Tuxedo MIB and poll the queue OIDs to get queue depth snapshots.
We would like to be able to get a lot more than that. For example:
* to be able to plot a graph of queue depths over a period of time
* get alerted when queue depths cross a certain limit (trap vs poll)
* work out how long an item spent on the queue before it got processed
So, are we placing too much emphasis on something that is not important to other Tuxedo users or is there a suite of tools one can use to obtain this sort of information that we are not aware of?
How important is request queuing to a typical Tuxedo site.
Regards,
Mike

Hi Mike,
You might want to look at the Oracle Tuxedo System and Application Monitor (TSAM). It is an add-on product from Oracle that provides system and application monitoring for Tuxedo applications. Although TSAM doesn't currently give you the kind of graph you are looking for, it does collect that information and place it in the TSAM monitoring database. TSAM provides the schema of the monitoring database, so creating whatever graphs you want should be pretty easy.
Specifically what I would look at though is TSAM's alert generating mechanism. Alert information can either be checked at the monitoring console, or it can be checked at the monitored nodes plug-in. The later offers the option of simply checking for an alert without having to report the data back to the console unless an alert is triggered. This tends to have much less impact on the monitored system and help keep the monitoring console from being flooded with data. In the Call Path and Service monitoring categories, you can define alerts that check if the number of queued messages exceed a certain amount. This is quite efficient and would have minimal impact on system performance, yet warn you when queues are starting to back up.
These two methods would give you historical data to look for trends as well as real time alerting to be notified that backups are occurring.
Regards,
Todd Little
Oracle Tuxedo Chief Architect

Similar Messages

  • Pq versus IPC queue monitoring (ipca)

    morning....
    There seems to be a discrepancy between what is reported via pq and what is visible through ipcs (the actual ipc queues). We have a script that polls pq (via tmadmin) and pumps statistics to a tool called Introscope used for presenting system stats historically. We also through a Java agent pump stats from Weblogic's WTC. On the same service without queue building in IPC there is in pq and a clear time difference (100+ms) between the imported WTC service and the actual Tuxedo service.
    This we have confirmed several times in our QA and production.
    My theory is that despite no OS queue building (ipc) Tuxedo as a container reacts to something internal to itself. If there is no queue building outside the container then it has to be inside?
    Another thing to note is I don't have any skills on how Tuxedo does the actual service call. Assuming it is a "ipc message queue" only that holds the call inclusive data (in-argument) while the pool of services offering the called service are busy. Or are semaphores involved to help out with the in-argument storage to keep the size of the data on the message queues down. What I am getting at is that the Tuxedo implementation is what gives rise to the diff between pq and ipcs.
    Edited by: MatthewDavidYoung on 2012-nov-15 00:35

    Hello Matthew,
    It is a common misconcpetion that the Tuxedo tmadmin pq command is the same as the operating system ipcs command.
    To force Tuxedo to do this there are some things that are needed that depend on the server you are interested in, the release of Tuxedo,
    and the rolling patch level of Tuxedo.
    For general application servers. Tuxedo 10.3 RP091 (Bug 13109309) enhances environment variable TM_SVRLOAD_REMEDY_ROUNDS
    to use ipcs results (e.g if set==50). See KM Doc ID 1463650.1
    For the GWTDOMAIN server. Tuxedo 8.0 RP391 (Bug 8130933),Tuxedo 8.1 RP298, Tuxedo 9.0 RP046 add environment variable
    TM_GWT_READIPCQUEUE. When set to 'y' tmadmin pq will provide ipcs results. See KM Doc ID 777521.1.
    Regards,
    Bob Finan
    Edited by: Bob Finan on Dec 5, 2012 5:01 PM

  • Behaviour of tpforward when ipc queue is full

    Hi,
    Can anyone explain the action taken by a server when the ipc queue of the service/server
    it is trying to tpforward to is full? What appears to happen is the typical blocking
    behaviour of a tpacall without the TPNOBLOCK flag set. Is there anyway of controlling
    this behaviour? What we would like to achieve is the equivalent of a TPNOBLOCK
    flag being set, with the server giving a failure message back to the caller immediately
    (rather than waiting for the blocking timeout) so that it is freed up to continue
    processing. Any and all suggestions welcome!
    Thanks & regards,
    Malcolm.

    Hi Todd,
    Thank you for following this thread! I've attached to TMUSREVT with strace to monitor msg* calls and figured out that TMUSREVT communicates with BBL periodically. Then I have reproduced TMUSREVT server hang in my lab environment. I've set a small value of kernel.msgmnb(kernel.msgmnb = 10512), ran a test client with many subscriptions and simulated high load on the server. When a hang occured TMUSREVT's queue looked this:
    ------ Message Queues --------
    key msqid owner perms used-bytes messages
    0x00000000 532545581 pbtrunk 666 10352 12
    (virtually full)
    And then in the ULOG I found the following records:
    184431.host!BBL.14147.3086141120.0: LIBTUX_CAT:1285: WARN: tpreturn message send blocked, will try file transfer
    184431.host!TMSYSEVT.14189.3086939840.0: WARN: .SysMachineMsgq: simple1 message queue blocking
    184501.host!BBL.14147.3086141120.0: LIBTUX_CAT:1286: ERROR: tpreturn could not send reply TPETIME - timeout occured
    Does this make sense for you?

  • Queue Monitor and Inbound Adapter Tabs in RWB are empty

    Hi,
    When we process messages in PI and want to see some monitoring data in the RWB we found that some screens do not show data. (PI 7.10)
    RWB --> Message Monitoring --> Integration Engineselect a message --> Details
    Then we get a new popup with 5 tabs:
    1. Mesage Data: OK
    2 Message Content: OK
    3. Inbound Adapter: when I log in an empty screen is shown
    4. Queue Monitor: when I log in an empty screen is shown
    5. end-to-end Monitoring : ends in Java dump
    I've looked into sap help and OSS, but I can't find any hints.
    Somebody any suggestions
    Thanks in advance
    Ron

    Hi Gokhan,
    Our technical consultants are having a look into the sap note.
    We have activated end-to-end montioring and now you'll see in the message monitor of the RWB that end-to-end monitoring is available.
    You activate it with RWB --> configuration
    Hope this clarifies it.
    Best regards
    Ron

  • Queues monitoring

    Hi Experts,
    Please explain ARFCRSTATE table like --
    What are the contents that it carry?
    What runtime information we can get from this table?
    We are in the process of optimising our monitoring activities and one of the major part is queues monitoring. We are now refreshing each and every time the inbound queues to check whether there are any messages stuck in them. We are now trying to develop a program so that if the messages are stuck in queues we will be informed like an Alert through mails or something else. After searching a lot in the forums i came to know that the above table carrys the run time information about queues. but when checked i didn't find any useful information.
    Are there any pre configured programs or tables or anything in sap for this queue monitoring stuff?
    If so please give the details.
    Thanks in advance.

    You can also configure CCMS alerts to monitor inbound/ outbound queues.
    Check the below blog and find more, can help you on queue monitoring:
    http://www.sdn.sap.com/irj/scn/weblogs?blog=/cs/user/create/cs_msg%3fx-lr=cs_disc%2f2131%26x-lr2=wlg%2f2777%26page=
    --Div

  • JMS Queue monitoring

    Hi everyone,
    is there any way to monitor a jms queue with its contained messages ? i'm talking about a tool like the jmx console in jboss - the JMS Adapter and JMS Notification in the Visual Admin only provide some properties.
    Any suggestions ?

    Hi,
    In short what you want (sending email in case message has stayed too long time in the queue), is NOT possible directly. That's not a standard feature by the JMS spec.   
    What is possible is the is so-called dead messages, once the acknowledgment fails the predefined number of times then the messages will be redirected to a special queue. From there the messages can be exported by telnet.
    Check SAP note 777930 for more info. Btw, it might be a good idea to get familiar with that note, otherwise if the external server let's say always throws an exception while processing the message, it will be moved to this special queue and unless someone issues the appropriate telnet commands, nobody will understand about this.
    However if you disable this  feature, that will mean that the message will be delivered endlessly, causing CPU load. Not nice if you have doubts in your external listeners.                                                                               
    Now about the queue monitoring :
    You could create manually a periodic task (EJB timers in J2EE 1.4 which is covered in the prerelease of the next server version, or if you are using Netweaver 04s or 04s than perhaps java.util.Timer) that will periodically open a JMS browser, check the  messages in the queue, if they have stayed too long time (>100 seconds for example ?) or if the queue is too big (>100 messages) you can send manually the email alert that something has went wrong. By usage of the JAVA API that should be simple
    Another thing you can do is that inside your external listeners and the onMessage method, you could check manually the number of times the message is redelivered, if it is above some threshold (i.e . if it is 3, that means the SAP server has delivered the message 3 times , since the listener have rejected it 2 times already),then you can send the email via the standard java API. The delivery count can be retrieved by using the standard optional property JMSXDeliveryCount from the message.                                                      
    HTH
    Peter

  • SAP XI and Business Process Modelling and Monitoring

    hi All,
    Could anybody tell me whether SAP XI has any Business Process Modelling tools or any Process Monitoring tools?
    If any, are these analogous to IBM WBIs Modeller and Monitor? Also does SAP XI provide any human interaction?
    Regards,
    Shree Norway

    Hi,
    In the XI-Repository you can build Business Procces with the Process Builder.
    for Monitoring you can use the Workflow Monitoring on XI.
    See also Transaction "SXMB_MONI_BPE"
    Regards,
    Robin

  • Queue Monitor Wait

    Database: 10.1.0.2
    The event of "Queue Monitor Wait" in STATS$SYSTEM_EVENT
    is tens of times of others' event.
    aq_tm_processes is already set to 1 in init.ora
    How to improve it?
    Thanks

    v$system_event shows cumulative values since the last instance startup. You need to install statspack and get delta values to find out which events are causing problems.

  • Queue Monitoring

    Hi Experts,
    I got this error in SAP Queue Monitoring anyone explain me
    Error:The assert condition was violated
    Also give me some link to understand the Queue monitoring in SAP.
    Regards,
    Manigandan

    Hi Manigandan,
    I got this error in SAP Queue Monitoring anyone explain me
    Error:The assert condition was violated
    Check this thread: http://scn.sap.com/thread/1240651
    Also give me some link to understand the Queue monitoring in SAP.
    If you use SCN search you can find links like these:
    http://scn.sap.com/docs/DOC-16526
    Outside of this comminuty: http://www.****************/Tutorials/XI/XMLMessageQueues/Monitor.htm
    Regards.

  • Queues stuck in DB-Queue Monitor .

    Hi,
    I have B1if with some scenarios in my system, but i have a problem with Queue stuck.
    Under DB-Queue Monitor, i have the stuck queues, Q.INB_IQ_INTQ_ASYN_QS.0010000000 > sap.B1SysSLDSync > message(<SLDModify sysid="0010000112" company="SBO_DEPOSITO_NILDO" task="delete" /> ).
    I have checked and all IPO-Steps are active.
    Any solution????
    []'s

    Hi Priyanka,
    To clear the no send status entry, go to R3AS, select the object say for BP (Bupa_main) press enter and then execute, then open R3AM1 enter object name as Bupa_main and select Running and done and execute.
    Now you can open SMQ2 and click on each entry with nosend status and then click on activate queue in the top toolbar, this shld change the status to running and then click on refresh.
    The following is the list of Queue extensions that are used in CRM, all the queues start with these extensions:
    <b>Outbound queues</b>
    CDB*     Start queues for loads CRM -> CDB
    CRM_SITE*     Load queues for Mobile Clients
    CSA*     Send queues of CRM Server Applications
    EXT*     Start queues for loads CRM -> Ext.
    R3AI/R*     Start queues for loads from ERP Backend system
    R3AU*     Load queues CRM -> ERP Backend system
    <b>Inbound queues</b>
    CRI*     Initial load queues CRM -> CDB
    CRM_SITE*      Load queues from Mobile Clients
    R3A*     Load queues ERP Backend  -> CRM
    CSA*     Send inbound queues of CRM Server Applications
    Hope this answers ur query.
    Regards,
    Amit
    Message was edited by:
            Amit Singh

  • Queue monitoring in Solman through CCMS

    Hi All,
    Can some one please help me to know how Queue monitoring(SMQ1 and SMQ2 in ECC system) is possible through CCMs.
    Would be thank ful if somebody can provides me steps as to how we can configure queue monitoring.
    Thanks You all in advance.
    Regards,
    Prerna

    Hi Prerna,
    Please go through the below SAP Note and a link which will help you to configure Queue Monitoring in CCMS.
    441269 - Setting up tRFC/qRFC monitoring in the alert monitor
    http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/03/25/michals-pi-tips-component-based-message-alerting
    Let me know if You face any more Issues for the same.
    Thanks
    Ajitabh

  • What's the ActivityMonitorD process? -- Activity Monitor with a 'D'

    So I've been monitoring my computer's processes with Activity Monitor, working through some possible bugs with a hard drive and I found that there is a process running that isn't listed here: http://triviaware.com/macprocess/all
    Anyone know if there is a process called: ActivityMonitorD
    That's right *'ActivityMonitor' with a D on the end*. That is a process in addition to the regular 'ActivityMonitor.app'. Anyone able to solve that riddle for me?

    What do I make of this information in my Activity Monitor:
    PID    Process Name                    User  
    1        launchd                              root    
    323       acticitymonitord                root  
    51          autofsd                           root
    50          blued                              root
    162        com.apple.dock.extra       root
    14          configured                       root                       
    107        coreaudiod                      root
    53          coreservicesd                 root
    95          CVMserver                     root
    13          diskarbitrationd               root
    54          diagnostic                      root
    44          dynamic_pager               root
    253        filecoordinationd              root
    15          fsevensd                        root
    52          hidd                               root
    40          KernalEventAgent           root
    10          kextd                             root       

  • Why XBTO* is visible in inbound queues monitor if it is an outbound queue

    Hi all,
    why XBTO* is visible in inbound queues monitor if it is an outbound queue?
    Any help will be really appreciated.
    Regards,
    Ivá

    Similar question...
    XBTO and XBTS Queues

  • How to save business processes structure and monitoring parameters?

    Hi dears!
    I've got a little question -is it possible to save business processes structure and monitoring parameters as a local file?
    Thanks in advance!

    One way to resolve this problem is use the method commit_and_refresh as shown below.
       data: lv_dest           type rfcdest.
        cl_hrrcf_m_rfc_services=>commit_and_refresh( lv_dest ).

  • How to process open queues in SMQ1

    Hi,
    We are trying to install newest patches for plugins. At the checks before the actual upgrade we get a message OPEN DATA EXTRACTION REQUESTS. I need to procees this request from YRD. But when i run the transaction RSA7 I dont find any queues.Also when i run the transaction LBWQ, I dont find any queues.
    But when i run the transaction SMQ1, for the conditions (client = '', queue name 'MCEX'), i get 6 queues.
    Now do i need to process this queues so that after upgrade data wont be lost. Or what can be impact if i delete it from SMQ1. Even though its DEV but we prefer to process this requests.
    Please let me know detail steps to carry out this procedure. (I am Fresher to BW)
    Thanks.

    You have to pass data from mcex queues to BW delta queues (using corresponding report for each one, surely named as RMBWV3xx) and load to bw all delta queues.

Maybe you are looking for

  • Still frames not staying still...

    I've had this problem on a couple of projects and have manned up to make my first post ever in a forum to try and solve it. Any help would be appreciated. In Final Cut I made some still frames using the Modify--Make Freeze Frame command, then used a

  • Anchor all images within a document

    Hello everynbody, i am currently triing to write a script that loops all (not anchored) graphics within a document. I want to anchor the image because i want them to move along with the text. Here are the steps i took so far: 1. Iterating through gra

  • Error occurs in VC when create iview

    Export, when I creating an iView in visual composer. system pop up a message like this: Webpage error details User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; CIBA) Timestamp: Sat, 27

  • Unable to connect via airport all of a sudden

    Unable to connect to the internet via airport all of a sudden. No changes to modem or router or network settings of macbook etc. Other devices in the house can connect just fine, but called cable support to verify and all is fine on the DSL end. Cann

  • D20 using DVD on Marvell SAS controler

    I was wondering if I can use a DVD drive on the Marvell SAS ports because I would like to use all the available SATA ports on the motherboard.  The reason for this is that I was told that I would get better performance and also trim support if I use