简体   繁体   English

TFS 2012-电子邮件警报不起作用

[英]TFS 2012 - Email Alerts not working

We have a TFS 2012 server and have tried to enable email alerts. 我们有一个TFS 2012服务器,并尝试启用电子邮件警报。 However, we never receive them. 但是,我们永远不会收到它们。

I have set up both team alerts and alerts specific to my account. 我已经设置了团队警报和针对我帐户的警报。 When configuring the SMTP settings in the TFS Admin Console, I have tried leaving the credentials blank, and also using my own credentials. 在TFS管理控制台中配置SMTP设置时,我尝试将凭据保留为空白,并使用自己的凭据。 Neither works. 都不行。

I have also created a simple console app in C# using the System.Net.Mail.SmtpClient class to test emails, both with and without my credentials, from the TFS server and it works. 我还使用C.使用System.Net.Mail.SmtpClient类在C#中创建了一个简单的控制台应用程序,以测试来自TFS服务器的带有或不带有我的凭据的电子邮件,并且可以正常工作。

The Event Logs don't show any relevant error messages. 事件日志不显示任何相关的错误消息。

How can I troubleshoot and fix this issue? 如何解决并解决此问题?

Update 更新资料

Using the information in this article , I was able to extract the following error message from the database job history table. 使用本文中的信息,我能够从数据库作业历史记录表中提取以下错误消息。

elapsed time: 00:00:00.5255295, sql calls: 35, sql connect time: 00:00:00, sql execute time: 00:00:00.0311960, non-sql time: 00:00:00.4943335 (94%), cpu time: 00:00:00.0312002 ( 5.9%), avg connect time: 0.00 ms, avg execute time:  0.9 ms. All methods quick. All sql calls quick. CollectionError: CreateEvent != TransformEvents. CollectionError: AfterReadSubscription != ExpandEvents. CollectionError: RemoveRestrictedContent != FilterNotification. CollectionError: RemoveRestrictedContent != SendNotifications.
There were errors or warnings during notification delivery.

0/0 emails delivered.
0/0 soap notifications delivered. 
1 errors.
0 warnings.

-------------------------------
Notification not delivered due to error during filtering of restricted content.

Notification: WorkItemChangedEvent (DeliveryType: EmailHtml; Address: )

Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.
   at System.Security.Cryptography.MD5CryptoServiceProvider..ctor()
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Security.Cryptography.CryptoConfig.CreateFromName(String name, Object[] args)
   at System.Security.Cryptography.MD5.Create(String algName)
   at Microsoft.TeamFoundation.Framework.Server.Alm.ConversationThread.Create(TeamFoundationRequestContext requestContext, ToolType toolType, Byte artifactType, Int32 artifactId, String topic, DateTime creationDate)
   at Microsoft.TeamFoundation.WorkItemTracking.Server.NotificationFilter.RemoveRestrictedContent(TeamFoundationRequestContext requestContext, String server, TeamFoundationIdentity[] userIdentities, XmlDocument eventCopy, Restriction[]& restrictions)
   at Microsoft.TeamFoundation.JobService.Extensions.Core.NotificationJobExtension.FilterNotification(TeamFoundationRequestContext requestContext, TeamFoundationIdentity subscriber, IEnumerable`1 filters, TeamFoundationNotification notification)

As described here , I have checked Local Security Policy for the Security Settings->Local Policies->Security Options->"System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing" value and it was already set to disabled . 如上所述这里 ,我已经检查了本地安全策略安全设置- >本地策略- >安全选项- >“系统加密:使用FIPS加密,散列和签名兼容的算法”的价值,它已经被设置为禁用

重新启动Visual Studio Team Foundation后台作业代理服务后,为我修复了此特定错误。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM