diff --git a/samples/SelfHostServer/Startup.cs b/samples/SelfHostServer/Startup.cs index f037e486bb..ac29316bd5 100644 --- a/samples/SelfHostServer/Startup.cs +++ b/samples/SelfHostServer/Startup.cs @@ -22,17 +22,21 @@ using System.Threading; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Http; using Microsoft.AspNet.Server.WebListener; +using Microsoft.Framework.Logging; +using Microsoft.Framework.Logging.Console; using Microsoft.Net.Http.Server; namespace SelfHostServer { public class Startup { - public void Configure(IApplicationBuilder app) + public void Configure(IApplicationBuilder app, ILoggerFactory loggerfactory) { var info = (ServerInformation)app.Server; info.Listener.AuthenticationManager.AuthenticationTypes = AuthenticationTypes.AllowAnonymous; + loggerfactory.AddConsole(); + app.Run(async context => { if (context.IsWebSocketRequest) diff --git a/samples/SelfHostServer/project.json b/samples/SelfHostServer/project.json index 5d32685c69..ffc11cd083 100644 --- a/samples/SelfHostServer/project.json +++ b/samples/SelfHostServer/project.json @@ -1,7 +1,8 @@ { "dependencies": { - "Microsoft.AspNet.Http": "1.0.0-*", - "Microsoft.AspNet.Server.WebListener": "1.0.0-*" + "Microsoft.AspNet.Hosting": "1.0.0-*", + "Microsoft.AspNet.Server.WebListener": "1.0.0-*", + "Microsoft.Framework.Logging.Console": "1.0.0-*" }, "commands": { "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:8080" }, "frameworks": { diff --git a/src/Microsoft.AspNet.Server.WebListener/MessagePump.cs b/src/Microsoft.AspNet.Server.WebListener/MessagePump.cs index f376c034af..692d121eb3 100644 --- a/src/Microsoft.AspNet.Server.WebListener/MessagePump.cs +++ b/src/Microsoft.AspNet.Server.WebListener/MessagePump.cs @@ -91,8 +91,6 @@ namespace Microsoft.AspNet.Server.WebListener throw new InvalidOperationException("No address prefixes were defined."); } - LogHelper.LogInfo(_logger, "Start"); - _listener.Start(); ActivateRequestProcessingLimits(); @@ -204,11 +202,11 @@ namespace Microsoft.AspNet.Server.WebListener public void Dispose() { - LogHelper.LogInfo(_logger, "Stop"); _stopping = true; // Wait for active requests to drain if (_outstandingRequests > 0) { + LogHelper.LogInfo(_logger, "Stopping, waiting for " + _outstandingRequests + " request(s) to drain."); _shutdownSignal.WaitOne(); } // All requests are finished diff --git a/src/Microsoft.AspNet.Server.WebListener/ServerFactory.cs b/src/Microsoft.AspNet.Server.WebListener/ServerFactory.cs index 803beae3af..f2eab5f7bc 100644 --- a/src/Microsoft.AspNet.Server.WebListener/ServerFactory.cs +++ b/src/Microsoft.AspNet.Server.WebListener/ServerFactory.cs @@ -68,7 +68,7 @@ namespace Microsoft.AspNet.Server.WebListener [SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope", Justification = "Disposed by caller")] public IServerInformation Initialize(IConfiguration configuration) { - Microsoft.Net.Http.Server.WebListener listener = new Microsoft.Net.Http.Server.WebListener(); + Microsoft.Net.Http.Server.WebListener listener = new Microsoft.Net.Http.Server.WebListener(_loggerFactory); ParseAddresses(configuration, listener); return new ServerInformation(new MessagePump(listener, _loggerFactory)); } diff --git a/src/Microsoft.Net.Http.Server/UrlPrefixCollection.cs b/src/Microsoft.Net.Http.Server/UrlPrefixCollection.cs index 0908630137..4e8ee48d60 100644 --- a/src/Microsoft.Net.Http.Server/UrlPrefixCollection.cs +++ b/src/Microsoft.Net.Http.Server/UrlPrefixCollection.cs @@ -162,9 +162,9 @@ namespace Microsoft.Net.Http.Server private void RegisterPrefix(string uriPrefix, int contextId) { - uint statusCode = 0; + LogHelper.LogInfo(_webListener.Logger, "Listening on prefix: " + uriPrefix); - statusCode = + uint statusCode = UnsafeNclNativeMethods.HttpApi.HttpAddUrlToUrlGroup( _webListener.UrlGroupId, uriPrefix, @@ -187,6 +187,7 @@ namespace Microsoft.Net.Http.Server private bool UnregisterPrefix(string uriPrefix) { uint statusCode = 0; + LogHelper.LogInfo(_webListener.Logger, "Stop listening on prefix: " + uriPrefix); statusCode = UnsafeNclNativeMethods.HttpApi.HttpRemoveUrlFromUrlGroup( diff --git a/src/Microsoft.Net.Http.Server/WebListener.cs b/src/Microsoft.Net.Http.Server/WebListener.cs index 54cb36fd20..68d5b15619 100644 --- a/src/Microsoft.Net.Http.Server/WebListener.cs +++ b/src/Microsoft.Net.Http.Server/WebListener.cs @@ -109,6 +109,12 @@ namespace Microsoft.Net.Http.Server _connectionCancellationTokens = new ConcurrentDictionary(); } + public WebListener(ILoggerFactory factory) + : this() + { + _logger = LogHelper.CreateLogger(factory, typeof(WebListener)); + } + internal enum State { Stopped, @@ -470,7 +476,6 @@ namespace Microsoft.Net.Http.Server { return; } - LogHelper.LogInfo(_logger, "Stop"); _urlPrefixes.UnregisterAllPrefixes();