/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the application-insights-2018-11-25.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ApplicationInsights.Model
{
///
/// Describes a problem that is detected by correlating observations.
///
public partial class Problem
{
private string _accountId;
private string _affectedResource;
private DateTime? _endTime;
private Dictionary _feedback = new Dictionary();
private string _id;
private string _insights;
private DateTime? _lastRecurrenceTime;
private long? _recurringCount;
private ResolutionMethod _resolutionMethod;
private string _resourceGroupName;
private SeverityLevel _severityLevel;
private DateTime? _startTime;
private Status _status;
private string _title;
private Visibility _visibility;
///
/// Gets and sets the property AccountId.
///
/// The AWS account ID for the owner of the resource group affected by the problem.
///
///
[AWSProperty(Min=12, Max=12)]
public string AccountId
{
get { return this._accountId; }
set { this._accountId = value; }
}
// Check to see if AccountId property is set
internal bool IsSetAccountId()
{
return this._accountId != null;
}
///
/// Gets and sets the property AffectedResource.
///
/// The resource affected by the problem.
///
///
public string AffectedResource
{
get { return this._affectedResource; }
set { this._affectedResource = value; }
}
// Check to see if AffectedResource property is set
internal bool IsSetAffectedResource()
{
return this._affectedResource != null;
}
///
/// Gets and sets the property EndTime.
///
/// The time when the problem ended, in epoch seconds.
///
///
public DateTime EndTime
{
get { return this._endTime.GetValueOrDefault(); }
set { this._endTime = value; }
}
// Check to see if EndTime property is set
internal bool IsSetEndTime()
{
return this._endTime.HasValue;
}
///
/// Gets and sets the property Feedback.
///
/// Feedback provided by the user about the problem.
///
///
[AWSProperty(Max=10)]
public Dictionary Feedback
{
get { return this._feedback; }
set { this._feedback = value; }
}
// Check to see if Feedback property is set
internal bool IsSetFeedback()
{
return this._feedback != null && this._feedback.Count > 0;
}
///
/// Gets and sets the property Id.
///
/// The ID of the problem.
///
///
[AWSProperty(Min=38, Max=38)]
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property Insights.
///
/// A detailed analysis of the problem using machine learning.
///
///
public string Insights
{
get { return this._insights; }
set { this._insights = value; }
}
// Check to see if Insights property is set
internal bool IsSetInsights()
{
return this._insights != null;
}
///
/// Gets and sets the property LastRecurrenceTime.
///
/// The last time that the problem reoccurred after its last resolution.
///
///
public DateTime LastRecurrenceTime
{
get { return this._lastRecurrenceTime.GetValueOrDefault(); }
set { this._lastRecurrenceTime = value; }
}
// Check to see if LastRecurrenceTime property is set
internal bool IsSetLastRecurrenceTime()
{
return this._lastRecurrenceTime.HasValue;
}
///
/// Gets and sets the property RecurringCount.
///
/// The number of times that the same problem reoccurred after the first time it was
/// resolved.
///
///
public long RecurringCount
{
get { return this._recurringCount.GetValueOrDefault(); }
set { this._recurringCount = value; }
}
// Check to see if RecurringCount property is set
internal bool IsSetRecurringCount()
{
return this._recurringCount.HasValue;
}
///
/// Gets and sets the property ResolutionMethod.
///
/// Specifies how the problem was resolved. If the value is AUTOMATIC
, the
/// system resolved the problem. If the value is MANUAL
, the user resolved
/// the problem. If the value is UNRESOLVED
, then the problem is not resolved.
///
///
public ResolutionMethod ResolutionMethod
{
get { return this._resolutionMethod; }
set { this._resolutionMethod = value; }
}
// Check to see if ResolutionMethod property is set
internal bool IsSetResolutionMethod()
{
return this._resolutionMethod != null;
}
///
/// Gets and sets the property ResourceGroupName.
///
/// The name of the resource group affected by the problem.
///
///
[AWSProperty(Min=1, Max=256)]
public string ResourceGroupName
{
get { return this._resourceGroupName; }
set { this._resourceGroupName = value; }
}
// Check to see if ResourceGroupName property is set
internal bool IsSetResourceGroupName()
{
return this._resourceGroupName != null;
}
///
/// Gets and sets the property SeverityLevel.
///
/// A measure of the level of impact of the problem.
///
///
public SeverityLevel SeverityLevel
{
get { return this._severityLevel; }
set { this._severityLevel = value; }
}
// Check to see if SeverityLevel property is set
internal bool IsSetSeverityLevel()
{
return this._severityLevel != null;
}
///
/// Gets and sets the property StartTime.
///
/// The time when the problem started, in epoch seconds.
///
///
public DateTime StartTime
{
get { return this._startTime.GetValueOrDefault(); }
set { this._startTime = value; }
}
// Check to see if StartTime property is set
internal bool IsSetStartTime()
{
return this._startTime.HasValue;
}
///
/// Gets and sets the property Status.
///
/// The status of the problem.
///
///
public Status Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property Title.
///
/// The name of the problem.
///
///
public string Title
{
get { return this._title; }
set { this._title = value; }
}
// Check to see if Title property is set
internal bool IsSetTitle()
{
return this._title != null;
}
///
/// Gets and sets the property Visibility.
///
/// Specifies whether or not you can view the problem. Updates to ignored problems do
/// not generate notifications.
///
///
public Visibility Visibility
{
get { return this._visibility; }
set { this._visibility = value; }
}
// Check to see if Visibility property is set
internal bool IsSetVisibility()
{
return this._visibility != null;
}
}
}