asp.net core 2.0 μ€νμ μ΅μν΄μ§λ €κ³ νμ΅λλ€. μ νλ‘μ νΈλ₯Ό λ§λ€μμΌλ©° λͺ¨λ μμ²μ΄ μμ λλ§λ€ λλ²κ·Έ μ°½μμ μ ν리μΌμ΄μ μΈμ¬μ΄νΈμ μΆλ ₯μ λ³Ό μ μμ΅λλ€. μ΄κ²μ λ΄ μμ μ νμ΅μ μν κ²μ΄λ―λ‘ μμ© νλ‘κ·Έλ¨ ν΅μ°°λ ₯μ μ¬μ©νκ³ μΆμ§ μμΌλ©° λλ²κ·Έ μ°½μ μ΄μ§λ½νλ κ²μ μνμ§ μμ΅λλ€.
λ΄κ° μ°Ύμ λλΆλΆμ μ‘°μΈμ λκ² ν¨ν€μ§λ₯Ό μ κ±°νλΌκ³ λ§νμ§λ§ AIλ λκ²μ ν΅ν΄ μ€μΉλμ§ μμ΅λλ€. μ€μΉλ μ μΌν nuget ν¨ν€μ§λ Microsoft.AspNetCore
λ° Microsoft.NETCore.App
μ΄λ©° λ λ€ AIμ μμ‘΄νμ§ μμ΅λλ€. λ λμκ° λ΄ μλΉμ€λ μ± λΉλμμ AIμ λν μ°Έμ‘°λ₯Ό μ°Ύμ μ μμ΅λλ€. κ΅¬μ± κ°μ²΄κ° μκ³ nuget ν¨ν€μ§κ° μκΈ° λλ¬Έμ AIκ° λ΄ νλ‘μ νΈμ μ ν μμ κ²μΌλ‘ μμνμ§λ§ μ¬μ ν 무μΈκ°λ₯Ό κΈ°λ‘νκ³ μμ΅λλ€.
κ°λ¨ν λ§ν΄μ AIλ λ΄ νλ‘μ νΈμ μΌλΆκ° μλ κ²μ²λΌ 보μ΄μ§λ§ λλ²κ·Έ μ°½μ λ‘κΉ ν©λλ€. μ΄κ²μ λΉνμ±ννλ €λ©΄ μ΄λ»κ² ν΄μΌ ν©λκΉ?
@BillHiebert
μΆκ° μ‘°μ¬ ν VS μΈλΆμμ λλ²κΉ (vscode μ¬μ© λλ λͺ λ Ήμ€μμ μ€ν)μ΄ μ΄λ¬ν λ©μμ§λ₯Ό νμνμ§ μκΈ° λλ¬Έμ Visual Studioμ μ°κ²°λ κ²μΌλ‘ 보μ λλ€. λͺ¨λ μ¬λμ΄ κ°μ νμ΄μ§μ μλμ§ νμΈνκΈ° μν΄ λ€μμ ν λ²μ HTTP μμ² ν VSμ λλ²κ·Έ μ°½μμ κ΄μ°°ν μΆλ ₯μ λλ€.
Microsoft.AspNetCore.Hosting.Internal.WebHost:Information: Request starting HTTP/1.1 GET http://localhost:62731/
Microsoft.AspNetCore.Hosting.Internal.WebHost:Information: Request starting HTTP/1.1 DEBUG http://localhost:62731/ 0
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.3967075Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Request starting HTTP/1.1 GET http://localhost:62731/","severityLevel":"Information","properties":{"Method":"GET","Host":"localhost:62731","CategoryName":"Microsoft.AspNetCore.Hosting.Internal.WebHost","Scheme":"http","Protocol":"HTTP/1.1","Path":"/","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.3967004Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"DEBUG /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df49","ai.operation.parentId":"|WC1843-a3501fd0-ac63df49.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Request starting HTTP/1.1 DEBUG http://localhost:62731/ 0","severityLevel":"Information","properties":{"ContentLength":"0","Method":"DEBUG","Host":"localhost:62731","CategoryName":"Microsoft.AspNetCore.Hosting.Internal.WebHost","Scheme":"http","Protocol":"HTTP/1.1","Path":"/","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.4617268Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"DEBUG /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df49","ai.operation.parentId":"|WC1843-a3501fd0-ac63df49.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAF9\" completed keep alive response.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel","ConnectionId":"0HL5IC4UQLAF9","{OriginalFormat}":"Connection id \"{ConnectionId}\" completed keep alive response.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Microsoft.AspNetCore.Hosting.Internal.WebHost:Information: Request finished in 129.444ms 200
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.4703409Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"DEBUG /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df49","ai.operation.parentId":"|WC1843-a3501fd0-ac63df49.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Request finished in 129.444ms 200","severityLevel":"Information","properties":{"CategoryName":"Microsoft.AspNetCore.Hosting.Internal.WebHost","StatusCode":"200","ElapsedMilliseconds":"129.444","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.4763186Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"The request path / does not match a supported file type","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware","{OriginalFormat}":"The request path {Path} does not match a supported file type","Path":"/","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Request","time":"2017-06-13T13:36:48.3336865Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"DEBUG /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df49","ai.internal.nodeName":"WC1843"},"data":{"baseType":"RequestData","baseData":{"ver":2,"id":"|WC1843-a3501fd0-ac63df49.","name":"DEBUG /","duration":"00:00:00.1564017","success":true,"responseCode":"200","url":"http://localhost:62731/","properties":{"httpMethod":"DEBUG","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.5106855Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"AuthenticationScheme: Cookies was not authenticated.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationHandler","AuthenticationScheme":"Cookies","{OriginalFormat}":"AuthenticationScheme: {AuthenticationScheme} was not authenticated.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.6199493Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET /","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Request successfully matched the route with name 'default' and template '{controller=Home}/{action=Index}/{id?}'.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Routing.RouteBase","{OriginalFormat}":"Request successfully matched the route with name '{RouteName}' and template '{RouteTemplate}'.","RouteName":"default","DeveloperMode":"true","AspNetCoreEnvironment":"Development","RouteTemplate":"{controller=Home}/{action=Index}/{id?}"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.7240547Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Executing action Iceberg.Controllers.HomeController.Index (Iceberg)","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker","{OriginalFormat}":"Executing action {ActionName}","DeveloperMode":"true","AspNetCoreEnvironment":"Development","ActionName":"Iceberg.Controllers.HomeController.Index (Iceberg)"}}}}
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker:Information: Executing action method Iceberg.Controllers.HomeController.Index (Iceberg) with arguments ((null)) - ModelState is Valid
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.7732242Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Executing action method Iceberg.Controllers.HomeController.Index (Iceberg) with arguments ((null)) - ModelState is Valid","severityLevel":"Information","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker","ValidationState":"Valid","{OriginalFormat}":"Executing action method {ActionName} with arguments ({Arguments}) - ModelState is {ValidationState}","DeveloperMode":"true","AspNetCoreEnvironment":"Development","ActionName":"Iceberg.Controllers.HomeController.Index (Iceberg)"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:48.7771150Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Executed action method Iceberg.Controllers.HomeController.Index (Iceberg), returned result Microsoft.AspNetCore.Mvc.ViewResult.","severityLevel":"Verbose","properties":{"ActionResult":"Microsoft.AspNetCore.Mvc.ViewResult","CategoryName":"Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker","{OriginalFormat}":"Executed action method {ActionName}, returned result {ActionResult}.","DeveloperMode":"true","AspNetCoreEnvironment":"Development","ActionName":"Iceberg.Controllers.HomeController.Index (Iceberg)"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:49.6276940Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Compilation of the generated code for the Razor file at 'C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Home\\PublicIndex.cshtml' started.","severityLevel":"Verbose","properties":{"FilePath":"C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Home\\PublicIndex.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRoslynCompilationService","{OriginalFormat}":"Compilation of the generated code for the Razor file at '{FilePath}' started.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:50.8462465Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Compilation of the generated code for the Razor file at 'C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Home\\PublicIndex.cshtml' completed in 1212.6438ms.","severityLevel":"Verbose","properties":{"FilePath":"C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Home\\PublicIndex.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRoslynCompilationService","ElapsedMilliseconds":"1212.6438","{OriginalFormat}":"Compilation of the generated code for the Razor file at '{FilePath}' completed in {ElapsedMilliseconds}ms.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:50.9127370Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Compilation of the generated code for the Razor file at 'C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\_ViewStart.cshtml' started.","severityLevel":"Verbose","properties":{"FilePath":"C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\_ViewStart.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRoslynCompilationService","{OriginalFormat}":"Compilation of the generated code for the Razor file at '{FilePath}' started.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:50.9679478Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Compilation of the generated code for the Razor file at 'C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\_ViewStart.cshtml' completed in 52.5297ms.","severityLevel":"Verbose","properties":{"FilePath":"C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\_ViewStart.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRoslynCompilationService","ElapsedMilliseconds":"52.5297","{OriginalFormat}":"Compilation of the generated code for the Razor file at '{FilePath}' completed in {ElapsedMilliseconds}ms.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:50.9763616Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"The view '/Views/Home/PublicIndex.cshtml' was found.","severityLevel":"Verbose","properties":{"ViewName":"/Views/Home/PublicIndex.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ViewResultExecutor","{OriginalFormat}":"The view '{ViewName}' was found.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ViewResultExecutor:Information: Executing ViewResult, running view at path /Views/Home/PublicIndex.cshtml.
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:50.9830038Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Executing ViewResult, running view at path /Views/Home/PublicIndex.cshtml.","severityLevel":"Information","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.ViewFeatures.Internal.ViewResultExecutor","{OriginalFormat}":"Executing ViewResult, running view at path {Path}.","Path":"/Views/Home/PublicIndex.cshtml","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.0334094Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"View lookup cache miss for view '_Layout' in controller 'Home'.","severityLevel":"Verbose","properties":{"ControllerName":"Home","ViewName":"_Layout","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine","{OriginalFormat}":"View lookup cache miss for view '{ViewName}' in controller '{ControllerName}'.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.1260378Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Compilation of the generated code for the Razor file at 'C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Shared\\_Layout.cshtml' started.","severityLevel":"Verbose","properties":{"FilePath":"C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Shared\\_Layout.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRoslynCompilationService","{OriginalFormat}":"Compilation of the generated code for the Razor file at '{FilePath}' started.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.2825633Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Compilation of the generated code for the Razor file at 'C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Shared\\_Layout.cshtml' completed in 154.0786ms.","severityLevel":"Verbose","properties":{"FilePath":"C:\\Users\\jpiquette\\Source\\Iceberg\\Views\\Shared\\_Layout.cshtml","CategoryName":"Microsoft.AspNetCore.Mvc.Razor.Internal.DefaultRoslynCompilationService","ElapsedMilliseconds":"154.0786","{OriginalFormat}":"Compilation of the generated code for the Razor file at '{FilePath}' completed in {ElapsedMilliseconds}ms.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3027823Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Tag helper component 'Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent' initialized.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Razor.TagHelpers.HeadTagHelper","ComponentName":"Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent","{OriginalFormat}":"Tag helper component '{ComponentName}' initialized.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3074495Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Tag helper component 'Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent' processed.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Razor.TagHelpers.HeadTagHelper","ComponentName":"Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent","{OriginalFormat}":"Tag helper component '{ComponentName}' processed.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3281429Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Tag helper component 'Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent' initialized.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Razor.TagHelpers.BodyTagHelper","ComponentName":"Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent","{OriginalFormat}":"Tag helper component '{ComponentName}' initialized.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3305192Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Tag helper component 'Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent' processed.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Razor.TagHelpers.BodyTagHelper","ComponentName":"Microsoft.AspNetCore.ApplicationInsights.HostingStartup.JavaScriptSnippetTagHelperComponent","{OriginalFormat}":"Tag helper component '{ComponentName}' processed.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker:Information: Executed action Iceberg.Controllers.HomeController.Index (Iceberg) in 2641.6233ms
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3708883Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Executed action Iceberg.Controllers.HomeController.Index (Iceberg) in 2641.6233ms","severityLevel":"Information","properties":{"CategoryName":"Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker","ElapsedMilliseconds":"2641.6233","{OriginalFormat}":"Executed action {ActionName} in {ElapsedMilliseconds}ms","DeveloperMode":"true","AspNetCoreEnvironment":"Development","ActionName":"Iceberg.Controllers.HomeController.Index (Iceberg)"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3761765Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAFA\" completed keep alive response.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel","ConnectionId":"0HL5IC4UQLAFA","{OriginalFormat}":"Connection id \"{ConnectionId}\" completed keep alive response.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Microsoft.AspNetCore.Hosting.Internal.WebHost:Information: Request finished in 3042.2608ms 200 text/html; charset=utf-8
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:36:51.3822633Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.operation.parentId":"|WC1843-a3501fd0-ac63df48.","ai.internal.nodeName":"WC1843"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Request finished in 3042.2608ms 200 text/html; charset=utf-8","severityLevel":"Information","properties":{"CategoryName":"Microsoft.AspNetCore.Hosting.Internal.WebHost","StatusCode":"200","ElapsedMilliseconds":"3042.2608","DeveloperMode":"true","AspNetCoreEnvironment":"Development","ContentType":"text/html; charset=utf-8"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Request","time":"2017-06-13T13:36:48.3336865Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.location.ip":"127.0.0.1","ai.application.ver":"1.0.0.0","ai.operation.name":"GET Home/Index","ai.cloud.roleInstance":"WC1843","ai.operation.id":"WC1843-a3501fd0-ac63df48","ai.internal.nodeName":"WC1843"},"data":{"baseType":"RequestData","baseData":{"ver":2,"id":"|WC1843-a3501fd0-ac63df48.","name":"GET Home/Index","duration":"00:00:03.0633276","success":true,"responseCode":"200","url":"http://localhost:62731/","properties":{"httpMethod":"GET","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:38:38.2082350Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.application.ver":"1.0.0.0"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAF9\" received FIN.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv","ConnectionId":"0HL5IC4UQLAF9","{OriginalFormat}":"Connection id \"{ConnectionId}\" received FIN.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:38:38.2082350Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.application.ver":"1.0.0.0"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAFA\" received FIN.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv","ConnectionId":"0HL5IC4UQLAFA","{OriginalFormat}":"Connection id \"{ConnectionId}\" received FIN.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:38:38.2340466Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.application.ver":"1.0.0.0"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAFA\" disconnecting.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel","ConnectionId":"0HL5IC4UQLAFA","{OriginalFormat}":"Connection id \"{ConnectionId}\" disconnecting.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:38:38.2340466Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.application.ver":"1.0.0.0"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAF9\" disconnecting.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel","ConnectionId":"0HL5IC4UQLAF9","{OriginalFormat}":"Connection id \"{ConnectionId}\" disconnecting.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:38:38.2599763Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.application.ver":"1.0.0.0"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAFA\" stopped.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel","ConnectionId":"0HL5IC4UQLAFA","{OriginalFormat}":"Connection id \"{ConnectionId}\" stopped.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-06-13T13:38:38.2599763Z","tags":{"ai.internal.sdkVersion":"aspnet5c:2.1.0-beta3","ai.application.ver":"1.0.0.0"},"data":{"baseType":"MessageData","baseData":{"ver":2,"message":"Connection id \"0HL5IC4UQLAF9\" stopped.","severityLevel":"Verbose","properties":{"CategoryName":"Microsoft.AspNetCore.Server.Kestrel","ConnectionId":"0HL5IC4UQLAF9","{OriginalFormat}":"Connection id \"{ConnectionId}\" stopped.","DeveloperMode":"true","AspNetCoreEnvironment":"Development"}}}}
λμν©λλ€. EF νλͺ©(λ§μ νλͺ©μ κΈ°λ‘ν¨)μ λλ²κ·Ένλ €κ³ ν λλ§λ€ μ€μ λ‘ VSκ° μ€λ¨λ©λλ€.
μ¬κΈ°μλ κ°μ λ¬Έμ μ
λλ€. λμκ° μλμ§ νμΈνκΈ° μν΄ λ©λͺ¨λ¦¬ νλ‘νμΌλ§μ μννκ³ μ ν리μΌμ΄μ
μΈμ¬μ΄νΈ ConcurrentDictionary+Node<String, String>
μ λ§μ νλͺ©μ΄ μΆκ°λκ³ μμμ νμΈν©λλ€.
λ΄κ° μλ ν μ€ν μ€μΈ ν΅μ°°λ ₯μ΄ μ ν μμμ΅λλ€(NuGet ν¨ν€μ§κ° μΆκ°λμ§ μμ).
Trcx528κ³Ό λ§μ°¬κ°μ§λ‘ λ€μ νμ λ°λΌ λλ²κ·Έ μ½μμ μΆλ ₯μ΄ νμλ©λλ€.
Application Insights Telemetry (unconfigured): {"name":"Microsoft.ApplicationInsights.Dev.Message","time":"2017-07-26T22:02:13.2372631Z","tags":{"ai.operation.id":"95b3c749-......
μ΄λ»κ² λΉνμ±νν©λκΉ?
κ°μ λ¬Έμ , 무μμ΄λ νλ κ²μ μμν 걸립λλ€...
ApplicationInsightsκ° λμ μΌλ‘ μ£Όμ λκ³ μμ΅λλ€. μ΄κ²μ λΉνμ±ννλ ν κ°μ§ λ°©λ²μ νλ‘μ νΈ μμ μ€μ μμ νκ²½ λ³μ ASPNETCORE_preventHostingStartupμ "true"λ‘ μ€μ νλ κ²μ λλ€.
https://github.com/aspnet/Hosting/commit/8377d226f1e6e1a97dabdb6769a845eeccc829ed μ°Έμ‘°
@Tratcher λ μμΈν μλ €μ£Όμ€ μ μλμ? μ°κ²°λ 컀λ°μμ launchSettings.json
νμΌμ μμ νλ λ°©λ²μ μ μ μμ΅λλ€.
κΈ°λ³Έμ μΌλ‘ μΌμ Έ μλ μ΄μ κ° μμ΅λκΉ? μ¬μ© μ 보λ₯Ό μμ§νκ³ μμ΅λκΉ?
Visual Studio 2017μλ asp.netμ κ°λ ₯ν μ’ μμ±μΌλ‘ μ€μΉλ "κ°λ°μ λΆμ λꡬ" νμ₯μ΄ μμ΅λλ€. μ κ±°λ₯Ό μλνλ©΄ μΉ κ°λ° λ° dotnet ν΅μ¬ λꡬλ μ κ±°λ©λλ€(omg). μ΄ νμ₯μ λΉνμ±ννμ΅λλ€. μ무 ν¨κ³Όκ° μμ΅λλ€. κΈ°λ³Έμ μΌλ‘ μ§μ¦λλ λλ²κ·Έ λ©μμ§κ° λνλ©λλ€(arg).
Microsoft.AspNetCore.All λ©ν λκ² ν¨ν€μ§λ μ ν리μΌμ΄μ μΈμ¬μ΄νΈ ν¨ν€μ§μ μ’ μλλ―λ‘ κΈ°λ³Έμ μΌλ‘(arg) μ€μΉλ©λλ€. νΉμ RIDλ₯Ό μ¬μ©νμ¬ μ±μ κ²μνλ©΄ μ ν리μΌμ΄μ μΈμ¬μ΄νΈ dllλ 볡μ¬λ©λλ€.
볡μ‘νκ³ λ¬Έμνλμ§ μμ μ΅νΈμμ λ°©λ²μ @Tratcher μ μν΄ μ¬λ°λ₯΄κ² μ 곡λ©λλ€. VSμμ μΉ νλ‘μ νΈμμ μμ± > launchSettings.json
μ μ΄κ³ λ³κ²½νλ €λ νλ‘νμ μ°Ύμ λ€μ environmentVariables
λ₯Ό λ³κ²½ν©λλ€. . λ΄ νλ‘μ νΈμ μλ λ€μκ³Ό κ°μ΅λλ€.
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"ASPNETCORE_preventHostingStartup": "True"
},
λλ μΉ νλ‘μ νΈ > μμ± > λλ²κ·Έλ₯Ό λ§μ°μ€ μ€λ₯Έμͺ½ λ²νΌμΌλ‘ ν΄λ¦νκ³ κ±°κΈ°μ μ λΉν νκ²½ λ³μλ₯Ό μΆκ°ν μ μμ΅λλ€. κ·Έλ₯΄λ₯΄. μ΄κ²μ μ΅νΈμΈ λλ κ°λ¨ν μ΅νΈμμμ΄μ΄μΌ ν©λλ€!
κ°μ¬ ν΄μ! ꡬμ±λμ§ μμ λ‘κ±° λλ¬Έμ μ΄κ²μ λ°κ²¬νμ΅λλ€.
MSμ λκ΅°κ°κ° @nzain μ ν΄κ²° λ°©λ²μ΄ Application Insightsλ₯Ό λΉνμ±ννκ±°λ λ‘κ·Έλ₯Ό μ¨κΈ°λμ§ νμΈν΄ μ£Όμκ² μ΅λκΉ?
λλ AIλ₯Ό μ ν μνμ§ μλλ€.
λλ AIλ₯Ό μ ν μνμ§ μλλ€.
+1
λλ AIλ₯Ό μ ν μνμ§ μλλ€.
+1
@Trcx528 μ λͺ©μ λ€μμΌλ‘ λ³κ²½νλ κ²μ κ³ λ €νμμμ€.
"ASP.NET Core 2.0 ~미리보기~ μμ Application Insightsλ₯Ό μ κ±° νλ λ°©λ²"
...κ·Έλμ λ μ£Όλͺ©λ°λμ? μ΄ λ¬Έμ λ μ¬μ ν μ°λ¦¬μκ² μμ΅λλ€. μ λͺ©μ "미리보기"κ° μλ κ²½μ° μ΅μ’ λ²μ μ΄ μ΅κ·Όμ μΆμλμκΈ° λλ¬Έμ 무μλ μ μμ΅λλ€.
κ·Έλ¦¬κ³ κ²μλ¬Όμ λν΄ κ°μ¬νκ³ μ°λ¦¬ λͺ¨λμκ² κ²½κ³ ν΄ μ£Όμ μ κ°μ¬ν©λλ€.
λλ AIλ₯Ό μ ν μνμ§ μλλ€.
+1
λμν©λλ€. μ΄κ²μ μ λ§ μ΄μν νλμ λλ€.
νλ‘μ νΈμμ μ°Έμ‘°ν νμλ μμ΄ Azureλ₯Ό ν΅ν΄ Application Insightsλ₯Ό "νμ±ν"ν μ μλ€λ κ²μ μ’μ μΌμ΄μ§λ§ μ΄κ²μ΄ μνλλ λ°©μμ΄λΌλ©΄ νλ μμν¬ κ΄μ μμ λΉμ©μ΄ λ무 λλ€κ³ μκ°ν©λλ€.
VSμμ μ€νν λ AI μ£Όμ μ λΉνμ±ννλ μΌλΆ UIλ₯Ό μΆκ°ν κ²μ λλ€. μ°λ¦¬λ μ²μμ κ·Έκ²μ μΆκ°νμ΄μΌ νμ΅λλ€(κ·Έκ²μ μ€μμμ΅λλ€).
@Tratcher κ° μ μν ν΄κ²° λ°©λ²μ μ μλνμ§λ§ μ‘°λͺ κΈ°λ₯μ μμ ν λΉνμ±ννμ¬ ν΅μ°°λ ₯ μ΄μμ μν₯μ λ―ΈμΉ μ μμ΅λλ€. μλ₯Ό λ€μ΄ ASP.NET Core IIS λͺ¨λμ https://github.com/aspnet/AspNetCoreModule/blob/002c8b9bc9a86cd3b4308e62c1f70ea625cbaae2/src/AspNetCore/Inc/serverprocess νλ‘μΈμ€λ₯Ό μμν λ IISIntegration ν¨ν€μ§λ₯Ό μΌλλ€.
@davidfowl κ°μ¬ν©λλ€. μ§κΈμ ν΄κ²° λ°©λ²μ κ·Έλλ‘ λκ² μ§λ§ μ΄ μλ‘μ΄ UIκ° VSμ μΆκ°λλ©΄ λ¦΄λ¦¬μ€ μ 보μμ μ΄ νκ²½ λ³μλ₯Ό μ¬μ©νλ μ¬μ©μμκ² μ μ¬μ κ°λ₯μ±μ νΌνκΈ° μν΄ μ€μ μ ν΄μ ν΄μΌ νλ€κ³ κ²½κ³ νλ©΄ μ λ§ μ’μ κ²μ λλ€. λ¬Έμ λ₯Ό ν΄κ²°νκ³ μλ‘μ΄ UI κΈ°λ₯μ μ¬μ©νμΈμ. λ€μ νλ² κ°μ¬ν©λλ€!
@davidfowl μ΄κ²μ΄ 곧 μ΅νΈμμμ΄ μλ μ΅νΈμΈμ΄ λ κ²μμ μλ €μ£Όμ μ κ°μ¬ν©λλ€! κ·Έλ¬λ, λΉμ μ μ΄κ²μ μν UIκ° μμ κ²μ΄λΌκ³ μΈκΈνμ΅λλ€ - λλ λΉμ μ΄ μλ―Ένλ λ°λ₯Ό μ΄ν΄νμ§ λͺ»νμ§λ§ μ°λ¦¬ μ€ λ§μ μ¬λλ€μ΄ VSμμ μ€νλμ§ μλλ€λ μ μ κ³ λ €νμμμ€. λ°λΌμ VS / UI μμ΄ λΉνμ±νν μ μμ΄μΌ ν©λλ€ .
λν @nzain μ ν΄κ²° λ°©λ²μ΄ Application Insightsλ₯Ό λΉνμ±ννλμ§ μλλ©΄ λ‘κ·Έλ₯Ό μ¨κΈ°λμ§ μλ €μ£Όμμμ€.
@grokky1 μ νν 무μμ λ§μνμλ 건κ°μ? κΈ°λ³Έμ μΌλ‘ μΌμ Έ μμ§ μμ΅λλ€. Visual Studioλ κΈ°λ₯μ μΌκΈ° μν΄ νκ²½ λ³μλ₯Ό μ€μ ν©λλ€. μμ€ν μ΄ μλνλ λ°©μμ λλ€...
@davidfowl κΈ°λ³Έμ μΌλ‘ μΌμ Έ μμ§ μλ€λ©΄ μ μ°λ¦¬ μ€ λ§μ μ¬λλ€μ΄ λ‘κ·Έμμ κ·Έκ²μ μ°Ύμμ΅λκΉ? κ·Έλμ μ°λ¦¬λ μ΄ μ€λ λλ₯Ό μ²μλΆν° μ°Ύμμ΅λλ€...
νμ§λ§ λΉμ λ§μ΄ λ§μμ λλ κ·Έκ²μ΄ μ΄λ»κ² μλνλμ§ μ λͺ¨λ₯΄κ² μ΅λλ€. λ¨μ§ νΈμν¨μ μν λΏμ λλ€. λλ μ ννμ§ μλ ν κ·Έκ²μ μ€νν μ μμ΅λλ€.
@davidfowl κΈ°λ³Έμ μΌλ‘ μΌμ Έ μμ§ μλ€λ©΄ μ μ°λ¦¬ μ€ λ§μ μ¬λλ€μ΄ λ‘κ·Έμμ κ·Έκ²μ μ°Ύμμ΅λκΉ? κ·Έλμ μ°λ¦¬λ μ΄ μ€λ λλ₯Ό μ²μλΆν° μ°Ύμμ΅λλ€...
λ¬΄μ¨ λ‘κ·Έ? Visual Studio λλ λ€λ₯Έ κ³³μμ?
νμ§λ§ λΉμ λ§μ΄ λ§μμ λλ κ·Έκ²μ΄ μ΄λ»κ² μλνλμ§ μ λͺ¨λ₯΄κ² μ΅λλ€. λ¨μ§ νΈμν¨μ μν λΏμ λλ€. λλ μ ννμ§ μλ ν κ·Έκ²μ μ€νν μ μμ΅λλ€.
λ¬Έμ μμ΅λλ€. κ·Έκ² μ κ° μ¬κΈ° μ¨ μ΄μ μ λλ€ π .
@davidfowl μλ₯Ό λ€μ΄ μμ @Trcx528 λ° @simonmurdock (λ΄κ° μ΄κ²μ λ°κ²¬ν λ°©λ²μ΄κΈ°λ ν¨)μ μν΄ νμλ λλ²κ·Έ λ‘κ·Έμ λλ€. κ·Έλμ μ°λ¦¬λ μ§κΈμΌλ‘μλ λΉμ μ΄ μΈκΈν λ³κ²½ μ¬νκΉμ§ @nzain μ ν΄κ²° λ°©λ²μ΄ κ·Έκ²μ μμ ν λΉνμ±ννκ±°λ ν΄λΉ λ‘κ·Έλ₯Ό μ¨κΈΈ μ μλμ§ μκ³ μΆμμ΅λλ€.
@davidfowl μλ₯Ό λ€μ΄ μμ @Trcx528 λ° @simonmurdockμ μν΄ νμλ λλ²κ·Έ λ‘κ·Έμ λλ€. κ·Έλμ μ°λ¦¬λ νμ¬λ‘μλ μΈκΈν λ³κ²½ μ¬νμ΄ μμ λκΉμ§ @nzain μ ν΄κ²° λ°©λ²μ΄ μ΄λ₯Ό μμ ν λΉνμ±ννλμ§ μλλ©΄ ν΄λΉ λ‘κ·Έλ₯Ό μ¨κ²Όλμ§ μκ³ μΆμμ΅λλ€.
μμμ μΈκΈν κ²μ²λΌ Visual Studio μΆλ ₯μ λλ€. μ΄λ ASP.NET Core μ ν리μΌμ΄μ μ μ€νν λλ§ λ°μνλ κ²μ μλλλ€.
@davidfowl Aaah μ΄μ λ¬΄μ¨ λ§μΈμ§ μκ² μ΄μ. π μ λ λ°νμ λ¬Έμ λΌ κ±±μ νλλ°. νμΈ κ°μ¬ν©λλ€. λν μΈκΈν λλ‘ VSμ μ΅νΈμΈ/μμ λ³κ²½μ κΈ°λν©λλ€.
μλ νμΈμ @davidfowl - μ λ VS15.4.0(미리 보기 1)μ μ€ν μ€μ΄λ©° App Insightsκ° κΈ°λ³Έμ μΌλ‘ μμ§λμ΄ ASP.NET Core μ±μ μ°κ²°λκ³ μμ΅λκΉ? μ무λ°λ 보λ΄μ§λ μμ§λ§ κ±°κΈ°μ μμ΅λλ€.
μλ νμΈμ @davidfowl - μ λ VS15.4.0(미리 보기 1)μ μ€ν μ€μ΄λ©° App Insightsκ° κΈ°λ³Έμ μΌλ‘ μμ§λμ΄ ASP.NET Core μ±μ μ°κ²°λκ³ μμ΅λκΉ? μ무λ°λ 보λ΄μ§λ μμ§λ§ κ±°κΈ°μ μμ΅λλ€.
λ§μ΅λλ€. κΈ°λ³Έμ μΌλ‘ Visual Studio μμ λΆμ΄ λ€μ΄μ€κ³ λκΈ° μ€μμΉκ° μμ΅λλ€. λͺ¨λ λΆμ λ μ μμ§λ§ κ·Έκ²μ ν° λ§μΉμ λλ€. κ·Έλλ νμ¬ λ‘μλ ν΄κ²° λ°©λ² μ λλ€.
μ΄μ μλ Program.csμ AIλ₯Ό ν¬ν¨(λλ ν¬ν¨νμ§ μμ)νλ μ΅μ μ΄ μμμ΅λλ€. μμΌλ‘ λΉμ·ν κ²μ λ§λ€ μ μλ μ΄μ κ° λ¬΄μμ λκΉ?
μ΄μ μλ Program.csμ AIλ₯Ό ν¬ν¨(λλ ν¬ν¨νμ§ μμ)νλ μ΅μ μ΄ μμμ΅λλ€. μμΌλ‘ λΉμ·ν κ²μ λ§λ€ μ μλ μ΄μ κ° λ¬΄μμ λκΉ?
μ΄ κΈ°λ₯μ λͺ©νλ μ§λ¨μ μν΄ AIλ₯Ό μΈλΆμμ νμ±ννλ κ²μ λλ€. κΈ°λ³Έμ μΌλ‘ μΌμ Έ μμ§ μμ μμΉμ μμ§λ§ λ€μν μΈλΆ μμ μΌλ‘ μμ© νλ‘κ·Έλ¨ μ½λ(κΉ¨μ§κΈ° μ¬μ΄)λ₯Ό 건λλ¦¬μ§ μκ³ λ μΌ€ μ μμ΅λλ€.
λ¬Έμ λ Visual Studio κ²½νμ΄ κΈ°λ³Έμ μΌλ‘ (λ΄κ° λ―Ώλ λλ²κΉ μ€μλ§) μΌκ³ λΉνμ±ννλ μ΅μ μ μ 곡νμ§ μλλ€λ κ²μ λλ€.
@davidfowl μ΄μ μ€λͺ μ ν΄μ£Όμ μ λ§μμ΄ νΈν©λλ€. νΉν 곧 μ μ΄ν μ μλ€λ κ²μ νμΈνμ ¨κΈ° λλ¬Έμ λμ± κ·Έλ μ΅λλ€.
κ·Έλ¬λ μ°λ¦¬μ μ μ₯μ μμμμ€. μ°λ¦¬ λλΆλΆμ AIκ° λ¬΄μμΈμ§ λͺ¨λ₯΄κ³ νμνμ§ μμΌλ©° μ¬μ©νμ§ μμ κ²μ λλ€(λλ AIλ₯Ό μμ ν μ΄ν΄νμ§ λͺ»νλ€λ κ²μ μΈμ ν©λλ€!). κ·Έλ¬λ μ°λ¦¬λ κ·Έκ²μ΄ "telemetry" μ κ΄λ ¨μ΄ μλ€λ κ²μ μκ³ μμ΅λλ€. μ΄λ Azure νμ΄ λμ "insights" λΌλ λ¨μ΄λ₯Ό νλͺ νκ² μ ννμ μ λλ‘ μ λ ν λ¨μ΄μ λλ€.
λ΄ μμ¬λ λΉνμ±ν/νμ±νν μ μλμ§ λλ κΈ°λ³Έμ μΌλ‘ κΊΌμ Έ μκ³ VSκ° νμ¬ μλμ μΌλ‘/λΉμλμ μΌλ‘(λλ λ²κ·Έ/κ°λ μΌλ‘ μΈν΄) μΌλμ§ μ¬λΆμ μκ΄νμ§ μμ΅λλ€. κ·Έκ° κ±±μ ν κ²μ μ°λ¦¬ IPμ μ μ¬μ μΈ λμΆμ΄ μλ€λ κ²μ λλ€. κ²°κ΅ λκ° μ΄λλ₯Ό... κ·Έλ¦¬κ³ λκ° κ·Έλ₯Ό λΉλν μ μλμ§ μκ² λ©λλ€. μ°λ¦¬λ μ£Όμ λλΌλ§λ₯Ό κ°μ‘μ΅λλ€.
CLI μ격 λΆμμ λΉνμ±ννκΈ° μν΄ ν΄λΉ νκ²½ λ³μλ₯Ό μΆκ°νκΈ° μ μ EF Coreμ λμΌν λ¬Έμ μ λλ€.
λ¬Έμ λ λ¬Έμκ° νμ μ½λ λ€μ μλ€λ κ²μ λλ€. λ°λΌμ μ격 μΈ‘μ μ΄ μμ λλ§λ€ λ¬Έμμμ μ΄λ₯Ό μ€λͺ ν΄μΌ ν©λλ€. μ°λ¦¬λ λΉμ μ²λΌ νλ μμν¬λ₯Ό μ΄ν΄νμ§ λͺ»νλ€λ μ μ λͺ μ¬νμμμ€. λ°λΌμ VS νμ΄ μ΄ λ¬Έμ λ₯Ό λ°κ²¬νμ λ μ 리νκ³ λ¬Έμννμ΄μΌ ν©λλ€. λλ λ¬Έμκ° λΉμ μ λΆμΌκ° μλλΌλ κ²μ μκ³ μμ΅λλ€(λΉμ μ λΆμΌλ "λ©μ§ κ²μ μμ°νκ³ μμ΅λλ€" :smile:). κ·Έλ¬λ λ¬Έμ νμ μλ ₯μ κ°νμΈμ. μ΄ κΈ°λ₯μ΄ λ¬΄μμΈμ§ μκ³ λ΄ νκ³Ό κ΄λ¦¬μμκ² μ€λͺ ν μ μλ€λ©΄ "λλΌλ§"κ° λνμ κ²μ λλ€. λμ€μ κ·Έκ²μ λν΄ μκ² λλ©΄ λꡬλ μ¬μ ν κ²°λ‘ μ λ΄λ¦¬κ² λ κ²μ λλ€. μ¬λ¬λΆμ νμκ²λ λ³ λ¬Έμ κ° μλμ§λ§(κ·Έλ¦¬κ³ μ¬λ¬λΆμ μ°λ¦¬κ° μ무 κ²λ μλ κ²μ λν΄ μ§λμΉκ² κ·Ήμ μ΄λΌκ³ μκ°ν μ μμ§λ§) μ¬μ©μμ ν΄λΉ κ΄λ¦¬μμκ²λ μ΄λ° μ’ λ₯μ μΌμ ν° μΌμ λλ€.
(λΉμ μ ASP νμ΄ νλ μΌμ 101% νλ₯ν©λλ€... κ·Έλ¦¬κ³ νμ μκ°μ λ΄μ΄ λμμ£Όμ μ κ°μ¬ν©λλ€.)
λΉμ·ν κ²μ μμ±νλ €κ³ νμ΅λλ€... μ μμΌ μ ν μμ μ λͺ¨μλ₯Ό μ°κ³ μ΄ κΈ°λ₯μ΄ μμ²λλ κ²½μ° κ±°κΈ°μ μμ΄μΌ νκ³ MSFTκ° μκ°νλ λλ‘κ° μλλΌ μ¬μ©μκ° νμλ‘ νλ λ°©μμΌλ‘ μλν΄μΌ νμ§ μμ΅λκΉ?
λλ νμ μ΄κ²μ΄ MSFTκ° μμ§ νμ νμ§ λͺ»ν Agile/Leanμ λΉνΈλΌκ³ μκ°νμ΅λλ€. Sprint λ° μ κΈ° 릴리μ€μμ μλ§μ μ μ νκ³Ό κΈ°λ₯μ μ 곡νλ μμ μ νλ₯νμ§λ§ λκ° μ΄λ₯Ό μꡬνκ³ νΌλλ°± 루νλ μ΄λμ μμ΅λκΉ?
@grokky1 μ νν 무μμ λ§μνμλ 건κ°μ? κΈ°λ³Έμ μΌλ‘ μΌμ Έ μμ§ μμ΅λλ€. Visual Studioλ κΈ°λ₯μ μΌκΈ° μν΄ νκ²½ λ³μλ₯Ό μ€μ ν©λλ€. μμ€ν μ΄ μλνλ λ°©μμ λλ€...
AspNetCore.All nuget ν¨ν€μ§λ₯Ό μ°Έμ‘°ν λ μ ν리μΌμ΄μ ν΅μ°°λ ₯μ΄ ν¬ν¨λ©λλ€. VSλ₯Ό μ€ννλ©΄ κΈ°λ³Έμ μΌλ‘ μΌμ Έ μμΌλ©° μ΄λ λμ°ν©λλ€(λ΄ μκ°). AI(κ°λ°μ/μ ν μμ μμ κ΄μ μμ)λ₯Ό μνλ©΄ μ΅νΈμΈ(μ: nuget ν¨ν€μ§λ₯Ό ν΅ν΄)ν κ²μ λλ€. μ΄κ²μ dllλ§ κ²μλλ 볡μ‘ν μμμμΌ μ μμ§λ§ azureκ° νμ±νν λκΉμ§ κΈ°λ³Έμ μΌλ‘ μ무 μμ λ μννμ§ μμ΅λλ€. λ°©λ²μ΄ μλλΌ μ격 μΈ‘μ μΌλ‘ μμ νμ§λ§ "μ격 μΈ‘μ μ νμ±ν/λΉνμ±ννκΈ° μν΄ μ½λλ₯Ό λ³κ²½νμ§ λ§λΌ"λ κ·νμ μμ μ λ΄ λλ€. λμνμ§ μμ§λ§ μμ΄λμ΄λ μκ² μ΅λλ€.
IISκ° μλ μ¬λλ€μ΄ μλ€λ κ²μ μκ³ κ³μ ¨μ΅λκΉ? μ‘°λͺ μμ΄ μ무κ²λ? νλμ μμ΄? λ§μ΄ν¬λ‘μννΈ μ격 λΆμ μμ΄? IIS μμ΄? λλ μ΄κ²μ΄ μμνκΈ° λ§€μ° μ΄λ ΅λ€λ κ²μ μκ³ μμ§λ§ Linux, nginx, kestrel λ° λ΄ μμ μ μ μ΄ μ격 μΈ‘μ μ΄λΌκ³ λ§ν©λλ€. AIκ° λλ₯Ό κ΄΄λ‘νλ κ²μ μ μΈνκ³ λ 맀λ ₯μ²λΌ μλν©λλ€.
μ΄κ²μ μ격 μΈ‘μ κ³Ό μ μ¬νμ§ μμ§λ§ νΌλλ°±μ κ°μ¬λ립λλ€. μ°λ¦¬λ λͺ¨λ λ΄κ° μ€λͺ ν λ°©μμΌλ‘ νΉμ λ¬Έμ λ₯Ό ν΄κ²°ν©λλ€.
λλ ν¬λ§μ κ°κ³ μΌλΆ μ¬λλ€μ λλ €μμ μννκΈ° μν΄ μ¬κΈ°μ λͺ κ°μ§ μ§μ μ νκ³ μΆμμ΅λλ€.
Visual Studioμμ λλ²κΉ ν λ Application Insightsλ λλ²κ·Έ μΈμ μ λν μΆκ° μ 보λ₯Ό μ 곡νλ λ©μ»€λμ¦μΌλ‘ μ¬μ©λ©λλ€. μλ₯Ό λ€μ΄ λ§μ§λ§ λλ²κ·Έ μΈμ μμ λ°μν μμΈλ₯Ό μ½λ λ μ¦μ μΆκ°ν©λλ€. μ΄λ κ²: https://twitter.com/condrong/status/897227862733869057
Azure App Servicesλ₯Ό μ¬μ©ν λ μ ν리μΌμ΄μ μ Application Insightsλ₯Ό μΆκ°νλλ‘ μ νν μ μλ λ©μ»€λμ¦μ΄ μμ΅λλ€. μ΄λ κ² νλ©΄ κ³ μ ν Application Insights 리μμ€λ₯Ό λ§λ€κ³ μ±μ λ€μ λ°°ν¬νμ§ μκ³ λ λ‘κ·Έ λ±μ΄ μλμΌλ‘ μ΄λνλλ‘ μ±μ μλ ꡬμ±ν μ μμ΅λλ€. μ΄λ μ¬λλ€μ΄ Azureμμ λ¬Έμ λ₯Ό μΌμΌν€κ³ μνλ λ°μ΄ν°λ₯Ό μ»μ μ μλ€κ³ μκ°νλ κ²½μ° Application Insightsλ₯Ό μΌ€ μ μλλ‘ νκΈ° μν κ²μ λλ€. μλ₯Ό λ€μ΄ App Insightsλ₯Ό μ¬μ©νλ©΄ μΉ μ¬μ΄νΈμ λν μ€ν¨ν μμ²μ μ½κ² νμΈν μ μμΌλ©° μ€ν¨ν μ΄μ λ₯Ό μ§λ¨ν μ μμ΅λλ€. Application Insightsλ₯Ό μ¬μ©νμ¬ νλ‘λμ λ¬Έμ λ₯Ό μ§λ¨ν λ§μ μ¬λ‘ μ°κ΅¬κ° μμ΅λλ€. ν΄κ²°λλ λ¬Έμ λ μ½λλ₯Ό λ³κ²½νκ³ λ€μ λ°°ν¬ν΄μΌ νλ€λ κ²μ λλ€. μ°λ¦¬λ Microsoftμ΄κΈ° λλ¬Έμ μ¬λλ€μ΄ Azureμ μ±μ μ±κ³΅μ μΌλ‘ λ°°ν¬ν μ μλλ‘ λλ λ° λ§μ μκ°μ ν μ ν©λλ€. μ§κΈ νλ‘λμ λ¬Έμ λ₯Ό μ§λ¨νκ³ ν΄κ²°ν΄μΌ νλ κ°μ₯ μ’μ λ°©λ² μ€ νλλ κ²μ¬, ν΄λΆ, λͺ¨λν°λ§ λ±μ μνν μ μλ Application Insightsλ‘ κ°λ₯ν λͺ¨λ λ°μ΄ν°λ₯Ό κ°μ Έμ€λ κ²μ λλ€. μ΄ κΈ°λ₯μ λͺ¨λ λ°μ΄ν°λ₯Ό μ½κ³ μννκ² λ§λλ κ²μ λλ€. λ¬Έμ λ μ¬λλ€μ΄ μΌλ°μ μΌλ‘ νμν λκΉμ§ μ΄ κΈ°λ₯μ΄ νμνλ€λ κ²μ μμ§ λͺ»νκ³ λ€μ λ°°ν¬νμ¬ μΌλλ‘ μμ²νλ κ²μ΄ κ³ ν΅μ€λ½κ³ μ±κ°μ μΌμ΄λΌλ κ²μ λλ€.
λ΄λΆ VS κ²½νμ App Serviceμμ μ¬μ©νλ κ²κ³Ό λμΌν μ‘°λͺ κΈ°μ μ μ¬μ©νμ§λ§ μ¬μ© μ¬λ‘λ λ§€μ° λ€λ¦ λλ€.
μ΄κ²μ΄ μ΄κ²κ³Ό κ΄λ ¨λ νΌλμ λμμ΄ λλμ?
μ΄κ²μ΄ μ΄κ²κ³Ό κ΄λ ¨λ νΌλμ λμμ΄ λλμ?
μ 보 μ£Όμ μ κ°μ¬ν©λλ€. κ°μΈμ μΌλ‘ μ½λ λ μ¦λ λ΄κ° μ«μ΄νκ³ λΉνμ±ννλ λ λ€λ₯Έ κΈ°λ₯μ λλ€. Intellitraceλ λ λ€λ₯Έ κ²μ λλ€. μκ°μ μ±λ₯κ³Ό νμ΄λ°μ 보μ¬μ£Όλ 2017λ μ μλ‘μ΄ κΈ°λ₯μ μ κ° λΉνμ±νν λ λ€λ₯Έ κΈ°λ₯μ λλ€. μ컨λ, κΈ°λ³Έμ μΌλ‘ VSλ₯Ό λ°©ν΄νλ λ§μ μ ν¬κ° μ€νλκ³ VSλ λλ €μ§λ λ° λμμ΄ νμνμ§ μμ΅λλ€. μ΄κ²μ λ΄ κ²½νμ μ μ©ν VS κΈ°λ₯μ λ§μ΄ μ°Ύμ§ λͺ»νλ νΌλλ°±κ³Ό λ§μ°¬κ°μ§λ‘ κ·Έλ€μ§ λΆλ§μ΄ μλλλ€. νμ§λ§ μ¬λ¬λΆμ΄ κ·Έ μ 보λ₯Ό μμ§νλ©΄μ μ΄λ―Έ μκ³ μλ€κ³ νμ ν©λλ€. λλ κ·Έ 물건μ μ°Ύμ λΉνμ±ννλ λ° μκ°μ 보λ΄κΈ° λλ¬Έμ μλ§λ μμμΌ κ²μ λλ€. κ·Έλ¬λ μμ μ΄ κ·Έλ κ² ν μ μλ€λ λ¨μκ° μλ μμ² λͺ μ μ¬λλ€μ μκ°ν΄ 보μμμ€. μ μ₯, F5λ μΆ©λΆν λ립λλ€. Ctrl-F5κ° μΆ©λΆν μ¬μ©λμ§ μμ΅λλ€(λͺ¨λ₯΄λ μ¬λλ€μ μν΄ Ctrl-F5λ λλ²κΉ μμ΄ μ±μ μμνκ³ ν¨μ¬ λ λΉ λ¦ λλ€). λ΄κ° λ―ΈμΉ μλ¦¬λ‘ λ€λ¦¬κ³ λΉμ μ μλ§λ λμ ꡴릴 κ²μ λλ€. κ·Έλ¬λ κ·Έ λλΉλλ μ¬μ΄ν΄μ΄ ν©μ°λ©λλ€.
μ컨λ, λ΄ κ°μΈμ μΈ νΌλλ°±μ λ λ§μ μ°λ κΈ°κ° μ’μ κ²κ³Ό λμΌνμ§ μμ΅λλ€.
νΉν μ± μΈμ¬μ΄νΈμ κ²½μ° λ¬Έμ λ Azure κ΄λ ¨ μ ν μΌλ‘ μλ €μ Έ μλ€λ κ²μ λλ€. ASP.NETμ "κ°λ°©ν" νλ μμν¬λ‘ ν¬μ§μ λλμ΄ μμΌλ―λ‘ azure μ νμ νλ μμν¬μ λͺ°λ λ£λ κ²μ λλ½κ² λκ»΄μ§κ³ Microsoftμ λν λΆμ μΌλ‘ μ΄μ΄μ§λλ€. λλ κ·Έκ²μ΄ κ±°μ μ μμ΄λλΌλ μκ΄νμ§ μμ΅λλ€. λλ κ±°κΈ°μ λΆνμν(νΉν μμΉ μλ μ νν) μ½λλ₯Ό ν¬ν¨νμ§ μλ κ²μ μ νΈν©λλ€.
κ·Έκ²μ μνλ μ¬λλ€μ μν΄, κ΅μ₯ν©λλ€. κ·Έκ²μ μ¬μ©νλ λμ κ³ κ°μ μν΄, κ·Έλ€μ κ·Έκ²μ μ’μν©λλ€. νλ₯νκ³ μ μ©ν κΈ°λ₯μ λ§λλ(λλ ꡬ맀νλ?) νλ₯ν μμ μ λλ€. κ·Έλ₯ μ΅νΈμΈ ν΄μ£ΌμΈμ.
...λ¬Έμ λ κ·Έκ²μ΄ νλμ μ μ© μ νμΌλ‘ μλ €μ Έ μλ€λ κ²μ λλ€. ASP.NETμ "κ°λ°©ν" νλ μμν¬λ‘ ν¬μ§μ λλμ΄ μμΌλ―λ‘ _SNEAKING_ azure μ νμ νλ μμν¬μ λ£λ κ²μ λλ½κ² λκ»΄μ§κ³ Microsoftμ λν λΆμ μΌλ‘ μ΄μ΄μ§λλ€ . κ±°μ λ Έλ ΈλΌλ©΄ μκ΄μμ΄μ...
+1
λ΄ νλ‘μ νΈλ₯Ό κ²μνλλ° νκ²½ λ³μμ ASPNETCORE_preventHostingStartupμ ν¬ν¨ν΄λ μ¬μ ν Microsoft.ApplicationInsightsλ₯Ό μ’ μμ±μΌλ‘ λμ΄ν©λλ€. λ°λΌμ ν΄κ²° λ°©λ²μ λλ²κΉ μλ§ μ μ©λκ³ κ²μλ λμ§ μλ κ² κ°μ΅λλ€. μλλ©΄ λ΄κ° λμΉ κ²μ΄ μμ΅λκΉ?
μμ‘΄μ±μ νμ μ‘΄μ¬νμ§λ§ λκ΅°κ°κ° κ·Έκ²μ λ°νμ§ μλ ν μ무 μΌλ νμ§ μμ΅λλ€.
λ¬Έμ λ μλ²μ λ°νμλ§ μ€μΉνκΈ° λλ¬Έμ assembly specified in the dependencies manifest was not found
λ©μμ§κ° νμλλ€λ κ²μ
λλ€. μ§κΈμ SDKλ₯Ό μ€μΉνκ³ λ¬Έμ κ° μ¬λΌμ‘μ§λ§ κΉ¨λν ν΄κ²°μ±
μ μλλλ€.
λ κ°μ§κ° μ΄λ»κ² μ°κ²°λμ΄ μλμ§ μ λͺ¨λ₯΄κ² μ΅λλ€. μ¬ν λ¨κ³μ μ 체 μ€λ₯ λ©μμ§κ° ν¬ν¨λ μ’ λ¨ κ° μνμ μ 곡ν μ μμ΅λκΉ?
λΉ ν νλ¦Ώμ μ¬μ©νμ¬ μ ASP.NET Core 2.0 μΉ μ ν리μΌμ΄μ μ μμ±νκΈ°λ§ νλ©΄ λ©λλ€. λ€μκ³Ό κ°μ μ΅μ csprojλ₯Ό μ»μ΅λλ€.
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
</ItemGroup>
</Project>
μ΄μ νλ‘μ νΈλ₯Ό λλ ν 리μ κ²μνκ³ μμ±λ .deps.json
νμΌμ μ΄ν΄λ΄
λλ€. Microsoft.ApplicationInsights
λ λ΄κ° launchSettingsμ 무μμ ν¬ν¨νλ μκ΄μμ΄ μ¬κΈ°μ ν¬ν¨λ κ²μ
λλ€.
μ, μλν©λλ€. μμ λ§νλ―μ΄ μ’ μμ±μ νμ ν¬ν¨λλ©° 무μΈκ°κ° μΌμ§ λκΉμ§ μ무 κ²λ νμ§ μμ΅λλ€.
μ ννμ§ μμ΅λλ€. λ°νμμ dll(λ°νμ
κ°κ²). ν κ°μ§ μλ₯Ό λ€μλ©΄ linux-arm RIDμ κ²½μ°μ
λλ€. λ€λ₯Έ μ¬λλ€κ³Ό λ§μ°¬κ°μ§λ‘
dllμ μ°Ύμ μ μλ€λ μ€λ₯λ‘ μ€ν¨ν©λλ€.
μ€μ 10.09.2017 10:38 schrieb "David Fowler" μλ¦Ό @github.com:
μ, μλν©λλ€. μμ λ§νλ―μ΄ μ’ μμ±μ νμ ν¬ν¨λμ΄ μμ΅λλ€.
κ·Έλ¦¬κ³ λ¬΄μΈκ°κ° λΉμ λ°ν λκΉμ§ μ무 μΌλ νμ§ μμ΅λλ€.β
λΉμ μ΄ μΈκΈλμκΈ° λλ¬Έμ μ΄κ²μ λ°λ κ²μ λλ€.
μ΄ μ΄λ©μΌμ μ§μ λ΅μ₯νκ³ GitHubμμ νμΈνμΈμ.
https://github.com/aspnet/Home/issues/2051#issuecomment-328328232 λλ μμκ±°
μ€λ λ
https://github.com/notifications/unsubscribe-auth/ANUK-3BK2phWmuA45xY__m7nq1cbya0Tks5sg6AQgaJpZM4N0O32
.
Ubuntu 16.04μμ μλνλλ° μ€ν μ΄μ DLLμ΄ λλ½λμλ€λ μ€λ₯ λ©μμ§κ° νμλμμ΅λλ€. λ°λΌμ νμ€ν μλνμ§ μμ΅λλ€. μ§κΈμ μ΄λ―Έ SDKκ° μ€μΉλμ΄ μκΈ° λλ¬Έμ λ©μμ§λ₯Ό 볡μ¬ν μ μμ§λ§ μ¬ννκΈ°λ κ½€ μ¬μΈ κ²μ λλ€.
νΉμ μ¬ν λ¨κ³ λλ μ¬ν λ¨κ³κ° μλ νλ‘μ νΈλ₯Ό μ 곡ν μ μλ€λ©΄ μ λ§ μ’μ κ²μ λλ€! λͺ¨λ νκ²½ μΈλΆ μ 보λ₯Ό μ§μ νλ κ²μ μμ§ λ§μμμ€(dotnet --infoκ° μ μλν¨).
λͺ¨λ κ²μ΄ κΈ°λ³Έμ μΌλ‘ μλν κ²μΌλ‘ μμλ©λλ€(μ΄λ μ°λ¦¬κ° νμΈν κ²μ λλ€). μ°λ¦¬κ° λκ°λ₯Ό λμΉλ©΄ κ·Έκ²μ μλ κ²μ΄ μ’μ κ²μ λλ€. "κΈ°λ³Έ" νκ²½μ΄ μλνμ§ μλλ€λ λΆλ§μ λ³Έ κ²μ μ΄λ²μ΄ μ²μμ λλ€. μ§μ μ¬νν μλ μμ§λ§ λλ½λ νΉμ μΈλΆ μ λ³΄κ° λλ½λ κ²μ νμ€ν©λλ€.
@davidfowl μ νν μ¬ν: https://github.com/dotnet/core-setup/issues/3122
νλ‘μ νΈκ° νμνμ§ μμΌλ©° κΈ°λ³Έ μΉ ν
νλ¦Ώμ μ ν리μΌμ΄μ
ν΅μ°°λ ₯μ μ’
μμ±μΌλ‘ κ°μ Έμ΅λλ€. νμ§λ§ μ νν μ¬νμ μν΄μλ μ μ₯μΉκ° νμν©λλ€.
Raspian 리ν¬μ§ν 리(Raspberry Pi κΈ°λ³Έ Linux λ°°ν¬ν)μλ λ€λ₯Έ μ΄μΌκΈ°κ° μμ μ μμ§λ§( apt-get
λ₯Ό ν΅ν΄ μ€μΉνλ κ²½μ°) λμΌν λ¬Έμ κ° μλ€κ³ μκ°ν©λλ€. λ€λ₯Έ λκ΅°κ°κ° μ΄κ²μ νμΈν μ μμ΅λλ€. μ°λ¦¬λ raspberry piλ₯Ό κ°μ§κ³ μμ§ μκ³ μ°λ¦¬μ buildroot λ°°ν¬νμ debianμ΄ μλλλ€.
@Falco20019 λ x64 λλ arm μν€ν μ²μμ Ubuntu 16.04μμλ μ€ν¨νλ€κ³ λ³΄κ³ νμ΅λλ€. λΉμ μ SDKλ₯Ό μ€μΉν λ μλνλ€κ³ λ§νμ΅λλ€. μ’ λ μμΈν μ 보λ₯Ό μ 곡ν μ μμ΅λλ€. μ΄μ μ 무μμ μ€μΉνμ΅λκΉ(λ§ν¬)? linux-x64μμλ μ€ν¨νλ©΄ ν μ₯μΉκ° μλ μ¬λλ€μ΄ λ μ½κ² μ¬νν μ μμ΅λλ€.
νΌλμ€λ¬μμ μμΈν μ€λͺ μ κΈ°λ€λ¦¬κ² μ΅λλ€.
arm λ¬Έμ λ Linux armμ© λ°νμ μ μ₯μκ° μκΈ° λλ¬Έμ λλ€(ν΄κ²° λ°©λ²λ λ¬Έμ μ κ²μλ¨).
@Falco20019 μ΄κ²μ΄ λΉμ μ΄ κ²ͺκ³ μλ λ¬Έμ μ λκΉ?
λλ νμ΄ νμ μμ₯μ΄λΌλ λ° λμνμ§λ§ "κΈ°λ³Έμ μΌλ‘ μλνλ€"κ³ λ§νλ©΄ μλ©λλ€. κΈ°λ³Έμ μΌλ‘ Windows-x64μμ μλν©λλ€. "μ΄λμλ dotnet μ€ν" μμ΄λμ΄κ° νλ₯νλ€κ³ μκ°ν©λλ€. μ΄κ²μ΄ Javaμ μ±κ³΅ μ¬λ‘μ λλ€. κ°μΈμ μΌλ‘ μ λ dotnetμ μ’μνκ³ κΉλ€λ‘μ΄ μλ² λλ νλ‘μ νΈκ° "dotnet ν΅μ¬ κΈ°ν"λ‘ λ°λλλ€. κΈ°λ³Έ ν νλ¦Ώμ μ΄λμμλ μ€νλμ΄μΌ ν©λλ€. κ·Έλ μ£ ?
μ, νμ§λ§ μ°λ¦¬κ° ARMμ μΌκΈ μλ리μ€λ‘ λμμΌλ‘ νμ§ μμκΈ° λλ¬Έμ λλ€. ARMμ νμ¬ "λ³κ²½ μ¬νμ μ μ©νλ©΄ μλν©λλ€" λ²μ£Όμ μν©λλ€. μμν κ·Έλ° κ²μ μλμ§λ§ λ¬Έμ μ μμΈμ λν μμ© νλ‘κ·Έλ¨ ν΅μ°°λ ₯μ΄ μ¬λ°λ₯΄μ§ μλ€κ³ μ£Όμ₯νλ κ²μ λλ€.
λλ μ΄ μ€λ λκ° μ± μΈμ¬μ΄νΈλ₯Ό μ΅νΈμμ λμ μ΅νΈμΈμΌλ‘ λ§λλ κ²μ κ΄ν κ²μ΄λ©° μ°λ¦¬λ κ²½νμ μ¬νκ°ν΄μΌ νλ€λ κ²μ μμ§λ§ μΈκΈλ μ΄λ€ κ²μμλ κ·Έκ²μ΄ λ¬Έμ λΌλ μ€μ μ¦κ±°λ₯Ό λ³΄μ§ λͺ»νμ΅λλ€. μ λ λμμ μ£ΌκΈ° μν΄ μ΅μ μ λ€νκ³ μμ΅λλ€. μ λ FUDκ° νΌμ§λ κ²μ μ’μνμ§ μμ λΏμ λλ€.
davidfowl... μ΄ μ€λ λλ μ± μΈμ¬μ΄νΈκ° μ΅νΈμμ λμ μ΅νΈμΈλλλ‘ νλ κ²μ λλ€.
λμν©λλ€. μ°λ¦¬λ κ·Έκ²μ μ§μ€ν΄μΌ ν©λλ€. κ·Έλ μ§ μμΌλ©΄ λ무 λ§μ λ¬Έμ λ‘ μΈν΄ μλ μ λΉ μ Έ μ무κ²λ ν΄κ²°νμ§ λͺ»ν κ²μ λλ€.
(...μ¬λ¬λΆ, μλ‘μ΄ λ¬Έμ μμ λ€λ₯Έ λ¬Έμ μ λν΄ λ Όμν μ μμκΉμ?)
@davidfowl μ£μ‘ν©λλ€, μνμ μ΄μ μμΌ λ³΄μμ΅λλ€. μλ²λ "Ubuntu 16.04.3 LTS(GNU/Linux 4.4.0-71-generic x86_64)"μ΄λ―λ‘ ARMμ΄ μλλλ€.
dotnet λ°νμ ν¨ν€μ§λ₯Ό μ¬μ©νμ¬ dotnet publishμ κ²μλ κ²°κ³Όλ₯Ό μ€νν λ μ± μΈμ¬μ΄νΈ λ¬Έμ κ° λ°μνλ€λ μ¬μ€μ νμΈνμ΅λλ€. dotnet sdk ν¨ν€μ§λ₯Ό μ¬μ©νμ¬ dotnet publishμ κ²μλ κ²°κ³Όλ₯Ό μ€ννλ©΄ μ λλ‘ μ€νλ©λκΉ? μ΄κ²μ λ°°ν¬λ 컨ν μ΄λμ λν΄μλ§ λ°νμμ λμμΌλ‘ νλ €κ³ νλ―λ‘ λ컀 컨ν μ΄λ λ΄λΆμ λ¬Έμ μμ΅λλ€. μ΄κ²μ aspnetcore 1μμ κ°λ₯νμ΅λλ€.
@AlphaCluster μ¬ν λ¨κ³λ₯Ό λͺ μμ μΌλ‘ μ 곡ν μ μμ΅λκΉ? ASP.NET 컨ν μ΄λ κΈ°λ³Έ μ΄λ―Έμ§λ₯Ό μ¬μ©νμ§ μκ³ λμ dotnet κΈ°λ³Έ μ΄λ―Έμ§λ₯Ό μ¬μ©νκ³ μμ΅λκΉ? ν΄λΉ κΈ°λ³Έ μ΄λ―Έμ§μλ λ°νμ μ μ₯μκ° μμ§λ§ μ± μΈμ¬μ΄νΈ λ‘λ μ€ν¨κ° μλλΌ μ΄λ₯Ό μ€λͺ νλ μ€λ₯κ° νμλμ΄μΌ ν©λλ€.
μΆμλλ dotnet λ°νμ λ° sdk tarballμ μ¬μ©νμ¬ μ체 μ΄λ―Έμ§λ₯Ό ꡬμΆνκ³ μμ΅λλ€. dotnet publishλ₯Ό μ¬μ©νμ¬ ν΄λμ κ²μν λ€μ λ°νμμ μ€ννλ 컨ν μ΄λ λ΄μμ μ€νν©λλ€. μ΄κ²μ 1.0 λ²μ μμλ μ μλνμ§λ§ λ§μ΄κ·Έλ μ΄μ ν λ 2.0μ΄ λμ¨ ν λ°νμ 컨ν μ΄λλ₯Ό μ¬μ©νλ©΄ μ΄ λ¬Έμ κ° λ°μν©λλ€.
Error:
An assembly specified in the application dependencies manifest (<project name>.deps.json) was not found:
package: 'Microsoft.ApplicationInsights.AspNetCore', version: '2.1.1'
path: 'lib/netstandard1.6/Microsoft.ApplicationInsights.AspNetCore.dll'
This assembly was expected to be in the local runtime store as the application was published using the following target manifest files:
aspnetcore-store-2.0.0-linux-x64.xml;aspnetcore-store-2.0.0-osx-x64.xml;aspnetcore-store-2.0.0-win7-x64.xml;aspnetcore-store-2.0.0-win7-x86.xml
μ΄ λ¬Έμ λ μ°λ¦¬κ° λ³΄κ³ μλ κ²κ³Ό μ μ¬ν΄ 보μμΌλ―λ‘ μ΄κ²μ΄ λ€λ₯Έ λ¬Έμ μΈ κ²½μ° λ€λ₯Έ λ¬Έμ λ₯Ό μ΄ ββμ μμ΅λλ€.
@AlphaCluster μ¬μ©μ μ§μ λ컀 컨ν μ΄λλ₯Ό λ§λλ λ° μ¬μ©ν νΉμ μ¬ν λ¨κ³μ λν μλ‘μ΄ λ¬Έμ λ₯Ό μ μΆν μ μμ΅λκΉ? κ·Έλ¬λ©΄ λͺ¨νΈν¨ μμ΄ λ¬Έμ λ₯Ό μ¬ννλ λ° λμμ΄ λ©λλ€.
2.0.0μμλ κ²μλ μΆλ ₯μ΄ μλ¦° μ ν리μΌμ΄μ μ μ€ννλ λ° νμν λ°νμ μ μ₯μλ₯Ό μΆκ°νμ΅λλ€(κΈ°λ³Έ λμ). λΆννλ sdk λ° λ°νμ tarballμλ λ°νμ μ μ₯μκ° ν¬ν¨λμ΄ μμ§ μμΌλ―λ‘ λ컀 컨ν μ΄λμ μ€μΉν΄μΌ ν©λλ€. https://github.com/aspnet/aspnet-docker/blob/master/2.0/jessie/runtime/Dockerfile#L5μ μ λ°νμ μ μ₯μλ₯Ό μ€μΉνλ λ°©λ²μ 보μ¬μ£Όλ μμ μ΄λ―Έμ§κ° μμ΅λλ€.
@AlphaCluster : Microsoft.AspNetCore.All
NuGet ν¨ν€μ§λ ApplicationInsights dllμ κ²μ ν΄λλ‘ κ°μ Έμ€κ³ λμ NuGet ν¨ν€μ§λ₯Ό λͺ
μμ μΌλ‘ μ§μ νκΈ° λλ¬Έμ μ¬μ©νμ§ μκΈ°λ‘ κ²°μ νμ΅λλ€.
Startup ν΄λμ€μ Configure λ©μλμμ μ΄κ²μ μ¬μ©νμ¬ Application Insightsμ μ격 λΆμ λ‘κΉ μ μ κ±°νμ΅λλ€.
var configuration = app.ApplicationServices.GetService<TelemetryConfiguration>();
configuration.DisableTelemetry = true;
κ³ λ§μ Yris - μ΄κ²μ λλ₯Ό μν΄ μΌνμ΅λλ€. λΆννλ λΉμ μ κ·Έκ²μ μ°ΎκΈ° μν΄μ΄ κΈ°μ¬μ λκΉμ§ λͺ νν΄μΌν©λλ€.
@tpplyler μ²λ§ μμ.
vscodeμμ μ΄ ν¨μΉλ trycatchν΄μΌ νλ μμΈλ₯Ό λ°μμν΅λλ€.
@ysris μ μ루μ μ μ μκ²λ ν¨κ³Όμ μ΄μμ΅λλ€.
λ°λΌμ Startup.Configure()
TelemetryConfiguration.DisableTelemetry = true
λ₯Ό μ€μ νλ κ²μ Visual Studioκ° κΈ°λ³Έμ μΌλ‘ μννλ AIμ "λ°κΈ°"λ₯Ό "λ°μ "νλ κ°μ₯ κ°λ¨ν λ°©λ²μΈ κ² κ°μ΅λλ€. AI μ΄μ
λΈλ¦¬λ νΉν Microsoft.AspNetCore.All
ν¨ν€μ§λ₯Ό μ¬μ©νλ κ²½μ° κ³μ NuGet μ’
μμ±μΌλ‘ ν¬ν¨λμ§λ§ μ무 μμ
λ μννμ§ μμ΅λλ€. κ·Έλ€μ΄ 무μμ΄λ ν μ μλ μ μΌν λ°©λ²μ Azureμ κ°μ λ€λ₯Έ μλ¨μΌλ‘ λ€μ λΆμ μΌλ κ²μ
λλ€. ASPNETCORE_preventHostStartup
λ₯Ό trueλ‘ μ€μ νλ©΄ 7μμ @Tratcher κ° μ²μ μ μν κ²κ³Ό λμΌν ν¨κ³Όλ₯Ό μ»μ μ μμ§λ§ λ¬Έμ μ λ°λ₯΄λ©΄
μ±μ μ΄μ λΈλ¦¬λ₯Ό ν¬ν¨νμ¬ νΈμ€ν μμ μ΄μ λΈλ¦¬μ μλ λ‘λλ₯Ό λ°©μ§ν©λλ€.
@davidfowl μ΄ 9μμ μΈμ ν κ²μ²λΌ μ΄κ²μ μλΉν "ν° λ§μΉ"μ΄λ©° λ°λμ§νμ§ μμ λΆμμ©μ΄ μμ μ μμΌλ―λ‘ @ysris μ μ루μ μ κ³ μνκ³ μμ΅λλ€.
λΆννλ @ysris ' μ루μ μ΄ μλνμ§ μμμ΅λλ€. @Tratcherμμ μ 곡νλ "ν° λ§μΉ" μ루μ μ μ¬μ©ν΄μΌ νμ΅λλ€. https://github.com/Microsoft/ApplicationInsights-dotnet-server/issues/724 μ°Έμ‘°
λλ²κΉ μ€μΈ νλ‘μΈμ€μμ VSμ AIμ μν μμΈν μ£Όμ μ΄ λΆμμ©μ΄ μκ³ λλ²κΉ κ²½νμ λ°©ν΄νλ μν©μ μμ±νκΈ° λλ¬Έμ μ΄κ²μ λ§€μ° νΌλμ€λ½μ΅λλ€. @brockallen μ λ΄κ° μ¬μ©νμ§ μλ μ΄ λͺ¨λ 보ν μμ΄ μμ μ μ΄κ³ 건μ ν VSλ₯Ό μ¬μ©νκ³ μΆλ€λ λ° λμν΄μΌ ν©λλ€.
μμμ μ΅νΈμΈμ λν ν° μμ§μκ°λ½μ μλλ‘.
μ¬λ¬ κ°μ§ λ€λ₯Έ λ²κ·Έκ° λμμ μ΄μΌκΈ°λκ³ μκ³ μ¬κΈ°μμ κ°μ₯ μ λ³΄κ³ λ κ²μ μλ€λ μμ μ λλ¬νκΈ° λλ¬Έμ μ΄ λ¬Έμ λ₯Ό λ«μ΅λλ€.
λ΄κ° νμ€νμ§ μλ€κ³ λ§ν λͺ κ°μ§λ₯Ό μμ½νμλ©΄ λ€μκ³Ό κ°μ΅λλ€.
μμλλ‘ μλνμ§ μλ App Insightsμ λν λ²κ·Έλ μ± ν΅μ°°λ ₯ μ μ₯μμ μμ΄μΌ ν©λλ€. λ°νμ μ μ₯μ λ¬Έμ μ λν λ²κ·Έλ λ©ν ν¨ν€μ§ μ μ₯μμ μ μΆνκ±°λ μ¬κΈ° ν μ μ₯μμ λͺ νν μ¬ν λ¨κ³κ° μλ λ λ€λ₯Έ λ¬Έμ λ₯Ό μ μΆνλ©΄ λμμ λ릴 μ μμ΅λλ€. λ¬Έμ κ° λ¬΄μμΈμ§ μμλ΄μμμ€.
μν μ°Έμ‘°μ κ°μ λ νλ‘μ νΈκ° λ§κ° μνλ₯Ό μ λΉννκΈ° μν΄ μλ‘ μ°Έμ‘°ν©λκΉ?
μ°Έμ‘° https://github.com/Microsoft/ApplicationInsights-aspnetcore/issues/523 μ΄ νλ‘μ νΈμμ λ¬Έμ λ₯Ό ν΄κ²°ν κ²μΌλ‘ μμν©λλ€.
μ΄κ±° λ€μ μ΄μ΄λ³ΌκΉμ? μλλ©΄ λ€λ₯Έ?
@DenisDollfus μ΄ μ€λ λκ° λ«ν κ²μΌλ‘ κ°μ£ΌνκΈ°μ μΆ©λΆν μ€λͺ /ν΄κ²° λ°©λ²μ μ 곡νλ€κ³ μκ°ν©λλ€.
@Rabadash8820 ν΄κ²° λ°©λ²λ³΄λ€ μμ μ¬νμ΄ λ μ’μ΅λλ€. κ·Έλ¬λ μ€μ λ‘ μμ @glennc μμ "VSμμ λλ²κΉ
ν λ μ± μΈμ¬μ΄νΈλ₯Ό μΌμ§ μλ λ λΆλͺ
ν μ΅μ
μ μΆκ°νκ³ μμ΅λλ€. ν₯ν μ
λ°μ΄νΈμ λνλ κ²μ
λλ€."λΌκ³ λ§ν λ§μ§λ§ μ§μ μ λμ³€μ΅λλ€.
μ΄ μ
λ°μ΄νΈμ κ°μ©μ±μ μΆμ νκΈ° μν΄ λ―Έν΄κ²° λ¬Έμ κ° μμΌλ©΄ λμμ΄ λ κ²μ
λλ€.
μ¬κΈ°μμλ λꡬ λ¬Έμ λ₯Ό μΆμ νμ§ μμ΅λλ€.
μ΄κ²μ λ§€μ° μ€λ§μ€λ½μ΅λλ€. DotNet Core 2.0μ μ¬μ©νλ©΄ μ€ν μμ€μ μ νν λ°λλλ ApplicationInsightsκ° κ°μ μ μ©λ©λλ€.
@genifycom - btw μ΄κ²μ Visual Studioμ μ΅μ 미리 보기μμ μμ λμμ΅λλ€. μ΄μ λ μ μλ λꡬ μ΅μ μ΄ μμ΅λλ€.
@BillHiebert 곡μ ν΄μ£Όμ
μ κ°μ¬ν©λλ€.
VS 2017 15.5.5μμλ 보μ΄μ§ μμ΅λλ€. 미리보기 15.6μ μΌλΆμ
λκΉ?
νΈμ§: μ, "미리보기"λ₯Ό μμ±νμ ¨μ΅λλ€. μ΄μ¨λ μμ μ¬νμ μ°Ύλ μ¬λμκ² λ²μ λ²νΈλ₯Ό μ 곡νλ―λ‘ λ΄ μ€μλ₯Ό μμ νμ§ μμ΅λλ€.
@DenisDollfus - λ§μ΅λλ€. λ³κ²½ μ¬νμ 15.6μ 미리 보기μ μμ΅λλ€.
μ΄κ²μ μ΅μ λ²μ μ Visual Studio 15.6.3μμ 릴리μ€λμμ΅λλ€.
"ASPNETCORE_preventHostingStartup": "True" μ€μ μ μ νν κ²½μ°μλ
λλ²κΉ
νλ λμ μ¬μ ν μΌλΆ μ격 λΆμ λ‘κ·Έκ° νμλ©λλ€.
μ΄λ€ μμ΄λμ΄?? μ΄ λ‘κ·Έλ₯Ό μμ ν μ κ±°νκ³ μΆμ΅λλ€.
ASP.NET Core 2.1λ‘ μ κ·Έλ μ΄λ π
κΈ°μ‘΄ νλ‘μ νΈμμ μ’
μμ±μ μ κ±°νλ λ°©λ²μ 무μμ
λκΉ?
web api .net coreμμ ν
νλ¦Ώ νλ‘μ νΈλ₯Ό λ§λ€κ³ λΉλμ λ€λ₯Έ μ»΄ν¨ν°μμ μ€ννλ €κ³ νλ©΄ λ€μ μ€λ₯κ° λ°μν©λλ€.
@afucher netcoreapp2.0 μ λμμΌλ‘ νλ€κ³ κ°μ νλ©΄ 2.0 aspnetcore λ°νμ μ μ₯μλ₯Ό μ€μΉνμ§ μμ κ² κ°μ΅λλ€. λ°νμ μ μ₯μλ SDK( https://www.microsoft.com/net/download/dotnet-core/sdk-2.1.200 )μ ν¬ν¨λμ΄ μκ±°λ https://wwwμμ ASP.NET Core λ°νμμ κ°λ³μ μΌλ‘ λ€μ΄λ‘λν μ μμ΅λλ€. microsoft.com/net/download/dotnet-core/runtime-2.0.8.
@davidfowl μ κ·Έλ μ΄λλ‘ λ¬Έμ κ° ν΄κ²°λμ§ μμμ΅λλ€.
λ΄ μΆλ ₯μ μ¬μ ν ββAI λ‘κ·Έλ‘ κ°λ μ°¨ μμ΅λλ€.
λꡬ -> μ΅μ μμ "λ‘컬 Application Insights λΉνμ±ν ..."λ₯Ό νμΈνλ©΄ ν¨κ³Όμ μ΄μμ΅λλ€. VS 15.7.5.
μ λ 15.8.4μ λλ€. "λꡬ > μ΅μ > νλ‘μ νΈ λ° μ루μ > μΉ νλ‘μ νΈ > λ‘컬 Application Insights λΉνμ±ν..."κ° μ νλμ΄ μμ΅λλ€. launchSettings.jsonμλ "ASPNETCORE_preventHostingStartup": "True"κ° μμ΅λλ€. μ¬μ ν μΆλ ₯μ Application Insightsκ° νμλ©λλ€...
@RodBarnes μ¬κΈ° λμΌ
λ€μμ μννμ¬ νλ¬κ·Έλ₯Ό λ½μμ΅λλ€.
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
#if !DEBUG
.UseApplicationInsights()
#endif
.UseStartup<Startup>();
Program.csμμ
μ, λ§μΉ¨λ΄ ASP.NET Core 2.1μμ λλ²κ·Έ μ€νΈλ¦Όμ 침묡μμΌ°μ΅λλ€.
if (_env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
TelemetryConfiguration.Active.DisableTelemetry = true;
TelemetryDebugWriter.IsTracingDisabled = true;
}
IsTracingDisabledκ° ν΅μ¬μ΄μμ§λ§ μ’μ μΈ‘μ μ μν΄ DisableTelemetryμ λ¨κ²¨λμμΌλ©° λμΌν μ루μ μμ .NET Framework λ° .NET Core νλ‘μ νΈ κ°μ μ°Έμ‘°λ₯Ό κ²μν λ μ μ©ν©λλ€.
f2calv λλΆμ μ½λκ° ASP.NET Core 2.2μμ μλν©λλ€.
"Asp.Net Core μΉ νλ‘μ νΈμ λν λ‘컬 Application Insights λΉνμ±ν"λ VS 15.9.5μ AIμ μν₯μ μ£Όμ§ μμΌλ©° TelemetryConfiguration.Active.DisableTelemetry
λ₯Ό μ€μ νκ±°λ νκ²½ λ³μ ASPNETCORE_preventHostingStartup
λ₯Ό μ€μ νμ§ μμ΅λλ€. (κ·Έλ¦¬κ³ VS λ€μ μμ). λλ μ¬μ ν μΆλ ₯μμ ββλ‘κ·Έλ₯Ό λ³Ό μ μμ΅λλ€.
"Asp.Net Core μΉ νλ‘μ νΈμ λν λ‘컬 Application Insights λΉνμ±ν"λ VS 15.9.5μ AIμ μν₯μ μ£Όμ§ μμΌλ©°
TelemetryConfiguration.Active.DisableTelemetry
λ₯Ό μ€μ νκ±°λ νκ²½ λ³μASPNETCORE_preventHostingStartup
λ₯Ό μ€μ νμ§ μμ΅λλ€. (κ·Έλ¦¬κ³ VS λ€μ μμ). λλ μ¬μ ν μΆλ ₯μμ ββλ‘κ·Έλ₯Ό λ³Ό μ μμ΅λλ€.
λμΌν λ¬Έμ , Disable local Application Insights for Asp.Net Core μΉ νλ‘μ νΈλ VS 15.9.4 λ° .NET Core SDK λ²μ 2.1.502μμ μ무 μμ λ μννμ§ μμ΅λλ€.
@ghosttie κ° μ°Έμ‘°ν μ€λ λμ 맨 μλμλ 곡μ λ¬Έμκ° μμ΅λλ€. https://docs.microsoft.com/en-us/azure/azure-monitor/app/asp-net-core#disable - μ격 μΈ‘μ - λμ μΌλ‘
κ°μ₯ μ μ©ν λκΈ
+1