-
-
Notifications
You must be signed in to change notification settings - Fork 85
Verifying operation
Joel Christner edited this page Nov 18, 2020
·
5 revisions
Several options exist to verify that Watson Webserver is operational.
Use the Server.IsListening
property.
Server s = new Server("127.0.0.1", 8080, false, DefaultRoute);
s.Start();
Console.WriteLine(s.IsListening);
From Windows Command Prompt, Linux Terminal, or Mac OSX terminal, use one of the following. In this example, Watson was started on port 9000.
Windows
C:\>netstat -ano | findstr ":8080"
TCP 127.0.0.1:8080 0.0.0.0:0 LISTENING 4
Linux/Mac
$ netstat -ano | grep ":8080"
It is often helpful to define a static route for a well-known URL such as /loopback
that will always return status 200 in the event that the server is running. This is often needed in environments with front-end loadbalancers which will use such an API for a healthcheck.
Server s = new Server("127.0.0.1", 8080, false, DefaultRoute);
s.Start();
[StaticRoute(HttpMethod.GET, "/loopback")]
static async Task LoopbackRoute(HttpContext ctx)
{
ctx.Response.StatusCode = 200;
await ctx.Response.Send();
}
Then you can access the URL using the browser, cURL, Postman, or a variety of other tools.
C:\>curl -i http://127.0.0.1:8080/loopback
HTTP/1.1 200 OK
Content-Length: 0
Content-Type: application/octet-stream
Server: Microsoft-HTTPAPI/2.0
Access-Control-Allow-Origin: *
Date: Sat, 03 Aug 2019 02:45:17 GMT