This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Confirming that Active Roles is still online

Hello,

Was wondering if anyone might have ever done any work in trying to develop a process for confirming that a given Active Roles server service is still online and responding. While we can of course look to see that the Windows Service is running, this does not tell us if the service itself has perhaps become unresponsive. In short, we need a way to "ping" the service and have it provide some kind of response. It doesn't matter what the response is, just that we get one.

Using the ADSI provider, or any of the QAD cmdlets is not an option.

I thought, perhaps, that we might be able to connect to the service via the WCF framework (the endpoint URI that I found was net.tcp://servername:port/activeroles/1), but thus far I've not made any progress going down that path. SVCUTIL reports:

The socket connection was aborted. This could be caused by an error processing your message or a 
receive timeout being exceeded by the remote host, or an underlying network resource issue. Local 
socket timeout was '00:05:00'.

An existing connection was forcibly closed by the remote host

My understanding is that WCF services may opt to publish their metadata via HTTP or MEX; presumably Active Roles is not publishing such information, which would cause SVCUTIL to fail, and means that I would not be able to interact with the service in this manner.

It's also possible that I'm overcomplicating things here, and someone else has a technique that is much simpler?

Thanks for your time!

  • In the SCOM Management Pack there is a script for General Response, but it sounds like if you can't use the ADSI provider so that's not an option. Since ActiveRoles leverages a database, I'm not sure you will be able to accurately assume the service is functioning if you are not able to connect to the database. - David

    ' Script Name - Active Roles Service: General response
    '
    ' Purpose     - Monitors the general responsiveness of Active Roles Service on Local host
    '              
    ' Assumptions - Script is run by a timed event
    '              
    ' Parameters  - ComputerName - Computer name
    '      LogSuccessEvent - True/False value to indicates to log an
    '                                 an event for script success
    '                                 (useful for demos and debugging)

  • Hi, David.

    Interesting lead - thanks! Never thought to check out the SCOM pack. You are correct, though - that script does rely on the ADSI provider. Our intention is to create something that runs on a load balancer appliance (e.g., F5 or equivalent), so installing the ADSI provider is not an option.

    Cheers,
    Shawn.

  • SCOM web response or invoke web requests with powershell over the F5 load balanced website? 

  • Hi, even if you say that the QAD cmdlets are no option for you, others might be interested. I am running the following script in the OS task scheduler all 15 minutes and it picks up the unresponsive cases quite well.

    $server = $env:COMPUTERNAME

    Start-Job -name $server -ScriptBlock {param ($server); Add-PSSnapin Quest.ActiveRoles.ADManagement;Connect-QADService -Proxy -Service $server} -ArgumentList $server | Wait-Job -Timeout 180

    if ((Receive-Job -name $server) -eq $null)

    {

    $Text = 'ARS service on server "{00}" has timed out.' -f $server

    #Your code

    }

    Hope this helps.
    Regards
    Richard