Monitoring Tessitura Report Server state

We periodically run into issues where the Tessitura Report Server is in an "decided to stop process scheduled reports" state.  When you log into the server, you will see that the Report Server is still running (not frozen or anything like that), but it has stopped processing scheduled jobs due to any number of possible issues which trigger a pop-up window describing the actual issue. Off the top of my head, a couple of problems I've found that will cause this state are deadlocks; dropped connection to Tessitura services, which for some reason the Report Server will not attempt to reconnect to; and a report having an invalid parameter. But there are more.

We've been struggling with identifying when the Report Server application is in this state. Sometimes it is days before someone realizes their reports are not running and by then it is too late in some cases...

Does anyone know of a good way to monitor the state of the Report Server application?

Ultimately I'd like to set up more intelligent alerting so we know when reports are not processing. One idea is to simply have a report scheduled to run every morning and if IT does not receive this, then we know there was an issue. The problem with this is that we have to remember to look for this email every morning and if it is missing.  Also it is not a perfect solution as a time-sensative report may still be missed.  I also saw a post referencing the following app: http://jockersoft.com/english/appmonitor_index.php   I am unsure if this will help though because technically the Report Server is still running.

Parents
  • Hi Jason,

     

    We have similar issues where Report Server stops working and no one really knows until scheduled jobs are missed. I am not aware of a good way to monitor the actual state of the report server application itself; however, I am currently planning on creating a scheduled job (likely via SQL Server Agent) that essentially checks the scheduled queue table – which I believe is gooesoft_schedule_queue:

     

    select COUNT(*)

      from gooesoft_schedule_queue a

    where a.status = 's'

       and DATEADD(HH, 1, a.computed_date) < GETDATE();

     

    If this query returns anything other than 0, then the report server is likely hung and my job would send an email out to administrators. I am padding this by an hour to take into account delays in starting jobs, as well as the fact that some jobs may not run exactly when scheduled due to the fact that multiple jobs are scheduled at around the same time. I’ll probably adjust how much time I pad this by based on how many false positives come out once I first implement. 

     

    Thanks,

    David

    _______________________________________________________
    David Frederick
    Database Applications Analyst
    Segerstrom Center for the Arts
    600 Town Center Drive,
    Costa Mesa, CA 92626
    T (714) 556-2122 x 4067 E DFrederick@SCFTA.org

     

    From: Tessitura Technical Forum [mailto:forums-technical@tessituranetwork.com] On Behalf Of Jason Kaiser
    Sent: Friday, September 28, 2012 9:30 AM
    To: David Frederick
    Subject: [Tessitura Technical Forum] Monitoring Tessitura Report Server state

     

    We periodically run into issues where the Tessitura Report Server is in an "decided to stop process scheduled reports" state.  When you log into the server, you will see that the Report Server is still running (not frozen or anything like that), but it has stopped processing scheduled jobs due to any number of possible issues which trigger a pop-up window describing the actual issue. Off the top of my head, a couple of problems I've found that will cause this state are deadlocks; dropped connection to Tessitura services, which for some reason the Report Server will not attempt to reconnect to; and a report having an invalid parameter. But there are more.

    We've been struggling with identifying when the Report Server application is in this state. Sometimes it is days before someone realizes their reports are not running and by then it is too late in some cases...

    Does anyone know of a good way to monitor the state of the Report Server application?

    Ultimately I'd like to set up more intelligent alerting so we know when reports are not processing. One idea is to simply have a report scheduled to run every morning and if IT does not receive this, then we know there was an issue. The problem with this is that we have to remember to look for this email every morning and if it is missing.  Also it is not a perfect solution as a time-sensative report may still be missed.  I also saw a post referencing the following app: http://jockersoft.com/english/appmonitor_index.php   I am unsure if this will help though because technically the Report Server is still running.




    This message was sent automatically to you by www.tessituranetwork.com because you subscribed to the Tessitura Technical Forum. You may reply to this message to post to the Technical forum or visit the site to search, read and post to the forums. In the interest of keeping the forum posts from becoming cluttered, we encourage you to delete previous message text from your reply before sending. Thank you!

Reply
  • Hi Jason,

     

    We have similar issues where Report Server stops working and no one really knows until scheduled jobs are missed. I am not aware of a good way to monitor the actual state of the report server application itself; however, I am currently planning on creating a scheduled job (likely via SQL Server Agent) that essentially checks the scheduled queue table – which I believe is gooesoft_schedule_queue:

     

    select COUNT(*)

      from gooesoft_schedule_queue a

    where a.status = 's'

       and DATEADD(HH, 1, a.computed_date) < GETDATE();

     

    If this query returns anything other than 0, then the report server is likely hung and my job would send an email out to administrators. I am padding this by an hour to take into account delays in starting jobs, as well as the fact that some jobs may not run exactly when scheduled due to the fact that multiple jobs are scheduled at around the same time. I’ll probably adjust how much time I pad this by based on how many false positives come out once I first implement. 

     

    Thanks,

    David

    _______________________________________________________
    David Frederick
    Database Applications Analyst
    Segerstrom Center for the Arts
    600 Town Center Drive,
    Costa Mesa, CA 92626
    T (714) 556-2122 x 4067 E DFrederick@SCFTA.org

     

    From: Tessitura Technical Forum [mailto:forums-technical@tessituranetwork.com] On Behalf Of Jason Kaiser
    Sent: Friday, September 28, 2012 9:30 AM
    To: David Frederick
    Subject: [Tessitura Technical Forum] Monitoring Tessitura Report Server state

     

    We periodically run into issues where the Tessitura Report Server is in an "decided to stop process scheduled reports" state.  When you log into the server, you will see that the Report Server is still running (not frozen or anything like that), but it has stopped processing scheduled jobs due to any number of possible issues which trigger a pop-up window describing the actual issue. Off the top of my head, a couple of problems I've found that will cause this state are deadlocks; dropped connection to Tessitura services, which for some reason the Report Server will not attempt to reconnect to; and a report having an invalid parameter. But there are more.

    We've been struggling with identifying when the Report Server application is in this state. Sometimes it is days before someone realizes their reports are not running and by then it is too late in some cases...

    Does anyone know of a good way to monitor the state of the Report Server application?

    Ultimately I'd like to set up more intelligent alerting so we know when reports are not processing. One idea is to simply have a report scheduled to run every morning and if IT does not receive this, then we know there was an issue. The problem with this is that we have to remember to look for this email every morning and if it is missing.  Also it is not a perfect solution as a time-sensative report may still be missed.  I also saw a post referencing the following app: http://jockersoft.com/english/appmonitor_index.php   I am unsure if this will help though because technically the Report Server is still running.




    This message was sent automatically to you by www.tessituranetwork.com because you subscribed to the Tessitura Technical Forum. You may reply to this message to post to the Technical forum or visit the site to search, read and post to the forums. In the interest of keeping the forum posts from becoming cluttered, we encourage you to delete previous message text from your reply before sending. Thank you!

Children
  • Thanks for this idea, David! We've been struggling with this issue for years, and I just implemented your solution.

    I just wanted to check in and see if you have any suggestions or words of advice now that you've been doing this for several months.

    Thanks,

    ~Katie Lachance-Duffy

    Application Systems Analyst/DBA/Tessitura Program Director

    Philadelphia Regional Arts Consortium

  • What I have done is write a sproc that runs every 15 mins... I noticed that if the scheduler is stopped, the login disappears from the processes since it cannot poll... I haven't tested how this works when a popup occurs and stops it though since we haven't had that problem in a while... Maybe this can help you.

     

    IF  NOT EXISTS

    (

    SELECT loginame,spid, [status],  hostname, DB_NAME(dbid) AS DBName, cpu, physical_io, last_batch

    FROM master.sys.sysprocesses WITH (NOLOCK)

    WHERE loginame = '<ReportSchedulerUserName>'

    AND last_batch >= DATEADD(mi,-5, GETDATE()) --5 minutes ago

    )

    BEGIN

        Send email....

    END

     

    Gloria:

    We have Ghostscript installed on our server and we don't have that process running (not sure if it runs when a pecific InfoMaker report runs) when I checked... If you're taking about the ghostscript printer to create pdf for InfoMaker reports. Maybe you can try re-installing it? We downloaded the 9.05 32bit version from  http://sourceforge.net/projects/ghostscript/files/GPL%20Ghostscript/



    [edited by: Renville Williams at 10:09 AM (GMT -6) on 25 Jan 2013]