{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.AppRunner.Types.ObservabilityConfiguration
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.AppRunner.Types.ObservabilityConfiguration where

import Amazonka.AppRunner.Types.ObservabilityConfigurationStatus
import Amazonka.AppRunner.Types.TraceConfiguration
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

-- | Describes an App Runner observability configuration resource. Multiple
-- revisions of a configuration have the same
-- @ObservabilityConfigurationName@ and different
-- @ObservabilityConfigurationRevision@ values.
--
-- The resource is designed to configure multiple features (currently one
-- feature, tracing). This type contains optional members that describe the
-- configuration of these features (currently one member,
-- @TraceConfiguration@). If a feature member isn\'t specified, the feature
-- isn\'t enabled.
--
-- /See:/ 'newObservabilityConfiguration' smart constructor.
data ObservabilityConfiguration = ObservabilityConfiguration'
  { -- | The time when the observability configuration was created. It\'s in Unix
    -- time stamp format.
    ObservabilityConfiguration -> Maybe POSIX
createdAt :: Prelude.Maybe Data.POSIX,
    -- | The time when the observability configuration was deleted. It\'s in Unix
    -- time stamp format.
    ObservabilityConfiguration -> Maybe POSIX
deletedAt :: Prelude.Maybe Data.POSIX,
    -- | It\'s set to @true@ for the configuration with the highest @Revision@
    -- among all configurations that share the same
    -- @ObservabilityConfigurationName@. It\'s set to @false@ otherwise.
    ObservabilityConfiguration -> Maybe Bool
latest :: Prelude.Maybe Prelude.Bool,
    -- | The Amazon Resource Name (ARN) of this observability configuration.
    ObservabilityConfiguration -> Maybe Text
observabilityConfigurationArn :: Prelude.Maybe Prelude.Text,
    -- | The customer-provided observability configuration name. It can be used
    -- in multiple revisions of a configuration.
    ObservabilityConfiguration -> Maybe Text
observabilityConfigurationName :: Prelude.Maybe Prelude.Text,
    -- | The revision of this observability configuration. It\'s unique among all
    -- the active configurations (@\"Status\": \"ACTIVE\"@) that share the same
    -- @ObservabilityConfigurationName@.
    ObservabilityConfiguration -> Maybe Int
observabilityConfigurationRevision :: Prelude.Maybe Prelude.Int,
    -- | The current state of the observability configuration. If the status of a
    -- configuration revision is @INACTIVE@, it was deleted and can\'t be used.
    -- Inactive configuration revisions are permanently removed some time after
    -- they are deleted.
    ObservabilityConfiguration
-> Maybe ObservabilityConfigurationStatus
status :: Prelude.Maybe ObservabilityConfigurationStatus,
    -- | The configuration of the tracing feature within this observability
    -- configuration. If not specified, tracing isn\'t enabled.
    ObservabilityConfiguration -> Maybe TraceConfiguration
traceConfiguration :: Prelude.Maybe TraceConfiguration
  }
  deriving (ObservabilityConfiguration -> ObservabilityConfiguration -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ObservabilityConfiguration -> ObservabilityConfiguration -> Bool
$c/= :: ObservabilityConfiguration -> ObservabilityConfiguration -> Bool
== :: ObservabilityConfiguration -> ObservabilityConfiguration -> Bool
$c== :: ObservabilityConfiguration -> ObservabilityConfiguration -> Bool
Prelude.Eq, ReadPrec [ObservabilityConfiguration]
ReadPrec ObservabilityConfiguration
Int -> ReadS ObservabilityConfiguration
ReadS [ObservabilityConfiguration]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ObservabilityConfiguration]
$creadListPrec :: ReadPrec [ObservabilityConfiguration]
readPrec :: ReadPrec ObservabilityConfiguration
$creadPrec :: ReadPrec ObservabilityConfiguration
readList :: ReadS [ObservabilityConfiguration]
$creadList :: ReadS [ObservabilityConfiguration]
readsPrec :: Int -> ReadS ObservabilityConfiguration
$creadsPrec :: Int -> ReadS ObservabilityConfiguration
Prelude.Read, Int -> ObservabilityConfiguration -> ShowS
[ObservabilityConfiguration] -> ShowS
ObservabilityConfiguration -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ObservabilityConfiguration] -> ShowS
$cshowList :: [ObservabilityConfiguration] -> ShowS
show :: ObservabilityConfiguration -> String
$cshow :: ObservabilityConfiguration -> String
showsPrec :: Int -> ObservabilityConfiguration -> ShowS
$cshowsPrec :: Int -> ObservabilityConfiguration -> ShowS
Prelude.Show, forall x.
Rep ObservabilityConfiguration x -> ObservabilityConfiguration
forall x.
ObservabilityConfiguration -> Rep ObservabilityConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ObservabilityConfiguration x -> ObservabilityConfiguration
$cfrom :: forall x.
ObservabilityConfiguration -> Rep ObservabilityConfiguration x
Prelude.Generic)

-- |
-- Create a value of 'ObservabilityConfiguration' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'createdAt', 'observabilityConfiguration_createdAt' - The time when the observability configuration was created. It\'s in Unix
-- time stamp format.
--
-- 'deletedAt', 'observabilityConfiguration_deletedAt' - The time when the observability configuration was deleted. It\'s in Unix
-- time stamp format.
--
-- 'latest', 'observabilityConfiguration_latest' - It\'s set to @true@ for the configuration with the highest @Revision@
-- among all configurations that share the same
-- @ObservabilityConfigurationName@. It\'s set to @false@ otherwise.
--
-- 'observabilityConfigurationArn', 'observabilityConfiguration_observabilityConfigurationArn' - The Amazon Resource Name (ARN) of this observability configuration.
--
-- 'observabilityConfigurationName', 'observabilityConfiguration_observabilityConfigurationName' - The customer-provided observability configuration name. It can be used
-- in multiple revisions of a configuration.
--
-- 'observabilityConfigurationRevision', 'observabilityConfiguration_observabilityConfigurationRevision' - The revision of this observability configuration. It\'s unique among all
-- the active configurations (@\"Status\": \"ACTIVE\"@) that share the same
-- @ObservabilityConfigurationName@.
--
-- 'status', 'observabilityConfiguration_status' - The current state of the observability configuration. If the status of a
-- configuration revision is @INACTIVE@, it was deleted and can\'t be used.
-- Inactive configuration revisions are permanently removed some time after
-- they are deleted.
--
-- 'traceConfiguration', 'observabilityConfiguration_traceConfiguration' - The configuration of the tracing feature within this observability
-- configuration. If not specified, tracing isn\'t enabled.
newObservabilityConfiguration ::
  ObservabilityConfiguration
newObservabilityConfiguration :: ObservabilityConfiguration
newObservabilityConfiguration =
  ObservabilityConfiguration'
    { $sel:createdAt:ObservabilityConfiguration' :: Maybe POSIX
createdAt =
        forall a. Maybe a
Prelude.Nothing,
      $sel:deletedAt:ObservabilityConfiguration' :: Maybe POSIX
deletedAt = forall a. Maybe a
Prelude.Nothing,
      $sel:latest:ObservabilityConfiguration' :: Maybe Bool
latest = forall a. Maybe a
Prelude.Nothing,
      $sel:observabilityConfigurationArn:ObservabilityConfiguration' :: Maybe Text
observabilityConfigurationArn = forall a. Maybe a
Prelude.Nothing,
      $sel:observabilityConfigurationName:ObservabilityConfiguration' :: Maybe Text
observabilityConfigurationName =
        forall a. Maybe a
Prelude.Nothing,
      $sel:observabilityConfigurationRevision:ObservabilityConfiguration' :: Maybe Int
observabilityConfigurationRevision =
        forall a. Maybe a
Prelude.Nothing,
      $sel:status:ObservabilityConfiguration' :: Maybe ObservabilityConfigurationStatus
status = forall a. Maybe a
Prelude.Nothing,
      $sel:traceConfiguration:ObservabilityConfiguration' :: Maybe TraceConfiguration
traceConfiguration = forall a. Maybe a
Prelude.Nothing
    }

-- | The time when the observability configuration was created. It\'s in Unix
-- time stamp format.
observabilityConfiguration_createdAt :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe Prelude.UTCTime)
observabilityConfiguration_createdAt :: Lens' ObservabilityConfiguration (Maybe UTCTime)
observabilityConfiguration_createdAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe POSIX
createdAt :: Maybe POSIX
$sel:createdAt:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe POSIX
createdAt} -> Maybe POSIX
createdAt) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe POSIX
a -> ObservabilityConfiguration
s {$sel:createdAt:ObservabilityConfiguration' :: Maybe POSIX
createdAt = Maybe POSIX
a} :: ObservabilityConfiguration) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | The time when the observability configuration was deleted. It\'s in Unix
-- time stamp format.
observabilityConfiguration_deletedAt :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe Prelude.UTCTime)
observabilityConfiguration_deletedAt :: Lens' ObservabilityConfiguration (Maybe UTCTime)
observabilityConfiguration_deletedAt = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe POSIX
deletedAt :: Maybe POSIX
$sel:deletedAt:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe POSIX
deletedAt} -> Maybe POSIX
deletedAt) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe POSIX
a -> ObservabilityConfiguration
s {$sel:deletedAt:ObservabilityConfiguration' :: Maybe POSIX
deletedAt = Maybe POSIX
a} :: ObservabilityConfiguration) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | It\'s set to @true@ for the configuration with the highest @Revision@
-- among all configurations that share the same
-- @ObservabilityConfigurationName@. It\'s set to @false@ otherwise.
observabilityConfiguration_latest :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe Prelude.Bool)
observabilityConfiguration_latest :: Lens' ObservabilityConfiguration (Maybe Bool)
observabilityConfiguration_latest = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe Bool
latest :: Maybe Bool
$sel:latest:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Bool
latest} -> Maybe Bool
latest) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe Bool
a -> ObservabilityConfiguration
s {$sel:latest:ObservabilityConfiguration' :: Maybe Bool
latest = Maybe Bool
a} :: ObservabilityConfiguration)

-- | The Amazon Resource Name (ARN) of this observability configuration.
observabilityConfiguration_observabilityConfigurationArn :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe Prelude.Text)
observabilityConfiguration_observabilityConfigurationArn :: Lens' ObservabilityConfiguration (Maybe Text)
observabilityConfiguration_observabilityConfigurationArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe Text
observabilityConfigurationArn :: Maybe Text
$sel:observabilityConfigurationArn:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Text
observabilityConfigurationArn} -> Maybe Text
observabilityConfigurationArn) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe Text
a -> ObservabilityConfiguration
s {$sel:observabilityConfigurationArn:ObservabilityConfiguration' :: Maybe Text
observabilityConfigurationArn = Maybe Text
a} :: ObservabilityConfiguration)

-- | The customer-provided observability configuration name. It can be used
-- in multiple revisions of a configuration.
observabilityConfiguration_observabilityConfigurationName :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe Prelude.Text)
observabilityConfiguration_observabilityConfigurationName :: Lens' ObservabilityConfiguration (Maybe Text)
observabilityConfiguration_observabilityConfigurationName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe Text
observabilityConfigurationName :: Maybe Text
$sel:observabilityConfigurationName:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Text
observabilityConfigurationName} -> Maybe Text
observabilityConfigurationName) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe Text
a -> ObservabilityConfiguration
s {$sel:observabilityConfigurationName:ObservabilityConfiguration' :: Maybe Text
observabilityConfigurationName = Maybe Text
a} :: ObservabilityConfiguration)

-- | The revision of this observability configuration. It\'s unique among all
-- the active configurations (@\"Status\": \"ACTIVE\"@) that share the same
-- @ObservabilityConfigurationName@.
observabilityConfiguration_observabilityConfigurationRevision :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe Prelude.Int)
observabilityConfiguration_observabilityConfigurationRevision :: Lens' ObservabilityConfiguration (Maybe Int)
observabilityConfiguration_observabilityConfigurationRevision = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe Int
observabilityConfigurationRevision :: Maybe Int
$sel:observabilityConfigurationRevision:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Int
observabilityConfigurationRevision} -> Maybe Int
observabilityConfigurationRevision) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe Int
a -> ObservabilityConfiguration
s {$sel:observabilityConfigurationRevision:ObservabilityConfiguration' :: Maybe Int
observabilityConfigurationRevision = Maybe Int
a} :: ObservabilityConfiguration)

-- | The current state of the observability configuration. If the status of a
-- configuration revision is @INACTIVE@, it was deleted and can\'t be used.
-- Inactive configuration revisions are permanently removed some time after
-- they are deleted.
observabilityConfiguration_status :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe ObservabilityConfigurationStatus)
observabilityConfiguration_status :: Lens'
  ObservabilityConfiguration (Maybe ObservabilityConfigurationStatus)
observabilityConfiguration_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe ObservabilityConfigurationStatus
status :: Maybe ObservabilityConfigurationStatus
$sel:status:ObservabilityConfiguration' :: ObservabilityConfiguration
-> Maybe ObservabilityConfigurationStatus
status} -> Maybe ObservabilityConfigurationStatus
status) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe ObservabilityConfigurationStatus
a -> ObservabilityConfiguration
s {$sel:status:ObservabilityConfiguration' :: Maybe ObservabilityConfigurationStatus
status = Maybe ObservabilityConfigurationStatus
a} :: ObservabilityConfiguration)

-- | The configuration of the tracing feature within this observability
-- configuration. If not specified, tracing isn\'t enabled.
observabilityConfiguration_traceConfiguration :: Lens.Lens' ObservabilityConfiguration (Prelude.Maybe TraceConfiguration)
observabilityConfiguration_traceConfiguration :: Lens' ObservabilityConfiguration (Maybe TraceConfiguration)
observabilityConfiguration_traceConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ObservabilityConfiguration' {Maybe TraceConfiguration
traceConfiguration :: Maybe TraceConfiguration
$sel:traceConfiguration:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe TraceConfiguration
traceConfiguration} -> Maybe TraceConfiguration
traceConfiguration) (\s :: ObservabilityConfiguration
s@ObservabilityConfiguration' {} Maybe TraceConfiguration
a -> ObservabilityConfiguration
s {$sel:traceConfiguration:ObservabilityConfiguration' :: Maybe TraceConfiguration
traceConfiguration = Maybe TraceConfiguration
a} :: ObservabilityConfiguration)

instance Data.FromJSON ObservabilityConfiguration where
  parseJSON :: Value -> Parser ObservabilityConfiguration
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"ObservabilityConfiguration"
      ( \Object
x ->
          Maybe POSIX
-> Maybe POSIX
-> Maybe Bool
-> Maybe Text
-> Maybe Text
-> Maybe Int
-> Maybe ObservabilityConfigurationStatus
-> Maybe TraceConfiguration
-> ObservabilityConfiguration
ObservabilityConfiguration'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CreatedAt")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DeletedAt")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Latest")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ObservabilityConfigurationArn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ObservabilityConfigurationName")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ObservabilityConfigurationRevision")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Status")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"TraceConfiguration")
      )

instance Prelude.Hashable ObservabilityConfiguration where
  hashWithSalt :: Int -> ObservabilityConfiguration -> Int
hashWithSalt Int
_salt ObservabilityConfiguration' {Maybe Bool
Maybe Int
Maybe Text
Maybe POSIX
Maybe ObservabilityConfigurationStatus
Maybe TraceConfiguration
traceConfiguration :: Maybe TraceConfiguration
status :: Maybe ObservabilityConfigurationStatus
observabilityConfigurationRevision :: Maybe Int
observabilityConfigurationName :: Maybe Text
observabilityConfigurationArn :: Maybe Text
latest :: Maybe Bool
deletedAt :: Maybe POSIX
createdAt :: Maybe POSIX
$sel:traceConfiguration:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe TraceConfiguration
$sel:status:ObservabilityConfiguration' :: ObservabilityConfiguration
-> Maybe ObservabilityConfigurationStatus
$sel:observabilityConfigurationRevision:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Int
$sel:observabilityConfigurationName:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Text
$sel:observabilityConfigurationArn:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Text
$sel:latest:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Bool
$sel:deletedAt:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe POSIX
$sel:createdAt:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe POSIX
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
createdAt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
deletedAt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
latest
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
observabilityConfigurationArn
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
observabilityConfigurationName
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
observabilityConfigurationRevision
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ObservabilityConfigurationStatus
status
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe TraceConfiguration
traceConfiguration

instance Prelude.NFData ObservabilityConfiguration where
  rnf :: ObservabilityConfiguration -> ()
rnf ObservabilityConfiguration' {Maybe Bool
Maybe Int
Maybe Text
Maybe POSIX
Maybe ObservabilityConfigurationStatus
Maybe TraceConfiguration
traceConfiguration :: Maybe TraceConfiguration
status :: Maybe ObservabilityConfigurationStatus
observabilityConfigurationRevision :: Maybe Int
observabilityConfigurationName :: Maybe Text
observabilityConfigurationArn :: Maybe Text
latest :: Maybe Bool
deletedAt :: Maybe POSIX
createdAt :: Maybe POSIX
$sel:traceConfiguration:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe TraceConfiguration
$sel:status:ObservabilityConfiguration' :: ObservabilityConfiguration
-> Maybe ObservabilityConfigurationStatus
$sel:observabilityConfigurationRevision:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Int
$sel:observabilityConfigurationName:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Text
$sel:observabilityConfigurationArn:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Text
$sel:latest:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe Bool
$sel:deletedAt:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe POSIX
$sel:createdAt:ObservabilityConfiguration' :: ObservabilityConfiguration -> Maybe POSIX
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
createdAt
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
deletedAt
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
latest
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
observabilityConfigurationArn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
observabilityConfigurationName
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
observabilityConfigurationRevision
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ObservabilityConfigurationStatus
status
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe TraceConfiguration
traceConfiguration