This monitor indicates that the Federation Service failed to remove artifacts from the SAML artifact store. If the same problem does not happen again within 15 minutes, the health state of this monitor will change back to a Green state. The alert that is generated by this monitor must be resolved manually.
This event can indicate that there is either a problem with the artifact storage service itself, or it is an expired artifact. Some of the possible causes for this event include the following:
The artifact database connection string is incorrect and cannot be used to connect to the artifact database server as it is currently configured.
Artifact service configuration is an unsupported database configuration: for example, if you are trying to enable the artifact service and are using the Windows Internal Database (WID) within a federation server farm deployment. In a farm deployment, you can use only a remote SQL Server database. Likewise, in a stand-alone federation server deployment, only WID is supported for artifact storage.
The artifact failed to be expired. This means that according to its configured artifact database scavenging interval (five minutes), the artifact service failed to remove the artifact from the artifact database.
For more specific information about the cause of this event, see the additional data that is provided in the event.
Review the additional data provided in this event to determine the exact cause, and to decide on appropriate resolution steps. Some of the possible resolutions for this event include the following:
Ensure that the artifact storage server is configured correctly. You can review the ArtifactDbConnection property by executing the Get-ADFSProperties cmdlet. If necessary, you can modify it by using the ArtifactDbConnection parameter with the Set-ADFSProperties cmdlet.
Verify that you are using the correct supported artifact database platform to provide artifact resolution service for your AD FS deployment: either WID for a stand-alone server deployment, or remote SQL Server for a farm deployment.
If the artifact database connection string and selected database platform choice are correct, verify network and database connectivity to the artifact storage server.
Target | Microsoft.ActiveDirectoryFederationServices20.ArtifactService | ||
Parent Monitor | System.Health.ConfigurationState | ||
Category | ConfigurationHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.RepeatedEventLogTimer2StateMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.ActiveDirectoryFederationServices20.ArtifactServiceArtifactStorageRemoveOrExpirationErrorMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.ActiveDirectoryFederationServices20.ArtifactService" ParentMonitorID="Health!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.RepeatedEventLogTimer2StateMonitorType" ConfirmDelivery="true">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.ActiveDirectoryFederationServices20.ArtifactServiceArtifactStorageRemoveOrExpirationErrorMonitor_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="RepeatedEventRaised" MonitorTypeStateID="RepeatedEventRaised" HealthState="Warning"/>
<OperationalState ID="TimerEventRaised" MonitorTypeStateID="TimerEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<RepeatedComputerName>$Target/Host/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</RepeatedComputerName>
<RepeatedLogName>$Target/Host/Host/Property[Type="Microsoft.ActiveDirectoryFederationServices20.FederationServer"]/ADFSEventLog$</RepeatedLogName>
<RepeatedExpression>
<And>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">250</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">289</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>(^AD FS$)|(^AD FS 2.0$)</Pattern>
</RegExExpression>
</Expression>
</And>
</RepeatedExpression>
<Consolidator>
<ConsolidationProperties/>
<TimeControl>
<WithinTimeSchedule>
<Interval>3600</Interval>
</WithinTimeSchedule>
</TimeControl>
<CountingCondition>
<Count>5</Count>
<CountMode>OnNewItemTestOutputRestart_OnTimerSlideByOne</CountMode>
</CountingCondition>
</Consolidator>
<TimerWaitInSeconds>900</TimerWaitInSeconds>
</Configuration>
</UnitMonitor>