我们最近在生产部署过程中将客户端迁移到sql Azure平台.通过所有外在的迹象,它是成功的:连接到它的网络应用程序都在工作.
但是,当我们查看Azure监视器时,我们会看到许多连接失败.我们找不到太多文档来解释什么构成失败的连接.我们的用户都没有报告问题.有谁知道这可能是怎么回事?
使用本文中的示例查询(View Connection Issues on an SQL Azure Instance)
SELECT [Date From] = EL.[start_time],[Date To] = EL.[end_time],[Database Name] = EL.[database_name],[Event Type] = EL.[event_type],[Event Sub Type] = EL.[event_subtype_desc],[Description] = EL.[description],[Additional Data] = EL.additional_data FROM sys.event_log EL WHERE EL.event_type != 'connection_successful' AND EL.event_subtype_desc != 'idle_connection_timeout' ORDER BY [Date From] DESC
我们看到这样的结果:
2013-04-19 16:40:00.0000000 2013-04-19 16:45:00.0000000 [DATABASE] connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:40:00.0000000 2013-04-19 16:45:00.0000000 connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:35:00.0000000 2013-04-19 16:40:00.0000000 [DATABASE] connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:35:00.0000000 2013-04-19 16:40:00.0000000 connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:30:00.0000000 2013-04-19 16:35:00.0000000 [DATABASE] connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:30:00.0000000 2013-04-19 16:35:00.0000000 connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:25:00.0000000 2013-04-19 16:30:00.0000000 [DATABASE] connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:25:00.0000000 2013-04-19 16:30:00.0000000 connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:20:00.0000000 2013-04-19 16:25:00.0000000 [DATABASE] connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:20:00.0000000 2013-04-19 16:25:00.0000000 connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL 2013-04-19 16:15:00.0000000 2013-04-19 16:20:00.0000000 [DATABASE] connection_Failed blocked_by_firewall Client IP address is not allowed to access the server. NULL
以及我们的连接字符串示例,如下所示:
<add name="[MyContext]" providerName="System.Data.sqlClient" connectionString=" Server=tcp:[machine].database.windows.net,1433; Database=[database]; User ID=[user]@[machine]; Password=[password]; Trusted_Connection=False; Encrypt=True; Connection Timeout=30;"/>