46 lines
1.5 KiB
C#
46 lines
1.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.AspNetCore;
|
|
using Microsoft.AspNetCore.Hosting;
|
|
using Microsoft.Extensions.Configuration;
|
|
using Microsoft.Extensions.Logging;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Serilog;
|
|
|
|
namespace OcelotApiGw
|
|
{
|
|
public class Program
|
|
{
|
|
public static void Main(string[] args)
|
|
{
|
|
BuildWebHost(args).Run();
|
|
}
|
|
|
|
public static IWebHost BuildWebHost(string[] args)
|
|
{
|
|
IWebHostBuilder builder = WebHost.CreateDefaultBuilder(args);
|
|
builder.ConfigureServices(s => s.AddSingleton(builder))
|
|
.ConfigureAppConfiguration(ic => ic.AddJsonFile(Path.Combine("configuration", "configuration.json")))
|
|
.UseStartup<Startup>()
|
|
.ConfigureLogging((hostingContext, loggingbuilder) =>
|
|
{
|
|
loggingbuilder.AddConfiguration(hostingContext.Configuration.GetSection("Logging"));
|
|
loggingbuilder.AddConsole();
|
|
loggingbuilder.AddDebug();
|
|
})
|
|
.UseSerilog((builderContext, config) =>
|
|
{
|
|
config
|
|
.MinimumLevel.Information()
|
|
.Enrich.FromLogContext()
|
|
.WriteTo.Console();
|
|
});
|
|
IWebHost host = builder.Build();
|
|
return host;
|
|
}
|
|
}
|
|
}
|