我喜欢将自定义属性添加到Application Insights 为我的应用程序的每个请求采取的指标.例如,我想添加用户登录和租户代码,例如我可以在Azure门户中对指标进行分段/分组.
相关的doc页面似乎就是这样:设置默认属性值
但是示例是针对事件(即gameTelemetry.TrackEvent("WinGame");),而不是针对HTTP请求:
var context = new TelemetryContext();
context.Properties["Game"] = currentGame.Name;
var gameTelemetry = new TelemetryClient(context);
gameTelemetry.TrackEvent("WinGame");
Run Code Online (Sandbox Code Playgroud)
我的问题:
TelemetryContext足够的代码吗?我是否应该创建一个TelemetryClient,如果是,我应该将它链接到当前请求吗?怎么样 ?Application_BeginRequest方法可以global.asax吗?在Windows Azure(预览)管理门户中,您可以更改网站的配置选项(请参阅http://www.windowsazure.com/en-us/manage/services/web-sites/how-to-configure-websites/ #howtochangeconfig).
我目前通过Web.Release.Config为我的ADO.NET实体框架连接设置连接字符串,但我想通过管理门户设置它,但无论我使用什么,我总是最终得到以下错误:
指定的命名连接在配置中找不到,不打算与EntityClient提供程序一起使用,或者无效.
它适用于常规连接字符串,即没有定义元数据和映射信息的元数据键(csdl,ssdl,msl).
这是我做的:
在"连接字符串"下,我有一个名为"ApplicationServices"的键,如下所示:
Server = tcp:xxxxx.database.windows.net,1433; Database = xxxxx; User ID = xxxxx @ xxxxx; Password = xxxxx; Trusted_Connection = False; Encrypt = True; Connection Timeout = 30;
这个工作.
我有另一个用于Entity Framework连接的密钥.我们称之为一个FooBarContext.它看起来像这样:
metadata = res:// /Models.FooBarContext.csdl|res:// /Models.FooBarContext.ssdl|res://*/Models.FooBarContext.msl;provider=System.Data.SqlClient;provider connection string ="Server = tcp:fooserver.database.windows.net,1433; Database = foobar; User ID = myname @ fooserver; Password = xxxxxxxxxx; Trusted_Connection = False; Encrypt = True; Connection Timeout = 30;"
这个导致上述错误.它是从Web.Release.Config中的工作值复制的,带有" 取而代之的是".
我尝试了其他变体:" 未触及,最后添加了元数据,但无济于事.我已经通过第二个网站重现了这个问题.
deployment entity-framework connection-string azure azure-web-sites
我正在尝试设置一个网站和webjob,但每次我尝试独立于网站发布webjob时都会出错(即Publish as Azure WebJob从上下文菜单中选择)
C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets(4270,5):错误:'MyWebJob.Models.MyDataEntities-Web.config连接字符串'参数不能为null或为空.
C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.targets(4270,5):错误:'MyWebJob.Models.MoreDataEntities-Web.config连接字符串'参数不能为null或为空.
部署WebJob有两种选择
当我将我的webjob链接到一个网站项目时,它会在网站上部署而不会出错.但是,当我尝试独立部署它时,我在控制台和错误列表中出现上述错误,但仍然部署了webjob.
如何独立部署我的webjob并摆脱这种持久的"错误"?
突然,Web部署开始失败.
Could not find file 'D:\home\site\wwwroot\App_Offline.htm'.
Run Code Online (Sandbox Code Playgroud)
我停止了服务,但部署仍然失败.
当我尝试从Kudu PowerShell UI中的wwwroot删除任何文件时,我收到错误"404 file not find",但刷新后仍然显示该文件.当我试图直接在powershell中删除文件时,我收到错误
Cannot remove item D:\home\site\wwwroot\Azure.Storage.dll: Invalid access to memory location.
At line:1 char:1
+ del .\Azure.Storage.dll
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : WriteError: (D:\home\site\wwwroot\Azure.Storage.
dll:FileInfo) [Remove-Item], IOException
+ FullyQualifiedErrorId : RemoveFileSystemItemIOError,Microsoft.PowerShell
.Commands.RemoveItemCommand
Run Code Online (Sandbox Code Playgroud)
我删除了该服务,重新创建它,并且Visual Studio中的第一个部署是Ok.但第二天部署再次失败.这些部署之间唯一的事情就是从VSTS部署.但我之前能够以任何顺序从VSTS和Visual Studio部署而没有任何问题.
我是该应用服务的所有者.
部署日志.
(2018-08-06 13:05:03) An error occurred when the request was processed on the remote computer.
Could not find file 'D:\home\site\wwwroot\App_Offline.htm'.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 …Run Code Online (Sandbox Code Playgroud) 当我使用网络角色时,我只是在天蓝色门户网站上传证书,我能够看到它.现在我已经切换到azure的网站,我将证书上传到azure管理门户网站,但我的代码看不到它一点都不
是否有我们需要做的配置或其他方式来访问azure网站上传的证书.
这就是我试图访问上传的证书的方式.
private List<string> GetAvailableCertificatesFromStore()
{
var list = new List<string>();
var store = new X509Store(StoreName.My,StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
try
{
foreach (var cert in store.Certificates)
{
// todo: add friendly name
list.Add(string.Format("{0}", cert.Subject));
}
}
finally
{
store.Close();
}
return list;
}
Run Code Online (Sandbox Code Playgroud) 很多时候,我们的DevOps人员创建了一个包含错误URL的Azure WebApp.
这迫使我们删除资源组(作为组包含web应用程序,sql azure等)并重新创建.
有没有办法通过powershell Azure API或一些隐藏的azure门户功能重新命名/更新Web App URL?
我将一个ASP.NET 5,MVC 6 Web应用程序部署到Azure.似乎如果我没有在网站上停留10-15分钟,它就会进入睡眠状态,醒来需要10-15秒.
我不确定它是否正在睡着的网站,或者它正在连接的数据库.
所以2个问题.
我已经知道如何更改在Azure网站上运行的Node.js的版本,但是如何查看可以在Azure中使用的可用Node.js版本?
这与此问题类似,但那里的提问者明确地想知道当前正在运行的版本,而不是可用的版本.
我是Azure架构的新手,我正在尝试理解为什么Azure资源组(在Azure上构建的应用程序的逻辑部署存储桶)在定义时与区域相关联.
起初我认为它是为灾难恢复或地理冗余提供全球分发,但后来我意识到单个资源组可以包含不同地区的Web应用程序,可以通过Traffic Manager提供这些功能.我认为使用单独的资源组有助于更好地识别哪些资源位于哪个区域,但除了组织目的之外,我无法理解资源组的区域定义意味着什么.
(编辑:删除一般建议查询以更集中)
在旧的Azure门户中,我曾使用此处显示的菜单下载App Services的发布配置文件(包括FTP用户名/密码).
如何在新的Azure门户中获得此功能?最终,我如何获得我的App服务的FTP用户/通行证?
azure-web-sites ×10
azure ×7
asp.net ×2
c# ×2
cloud ×1
deployment ×1
iis ×1
node.js ×1
scalability ×1