in lib/constructs/observability-artefacts.ts [14:224]
constructor(scope: Construct, id: string, buildConfig: BuildConfig) {
super(scope, id);
// All Cloud watch insights query
// All lambda log group names
const accountAssignmentAPILogGroupNames: Array<string> = [
`/aws/lambda/${buildConfig.Environment}-linkApiHandler`,
`/aws/lambda/${buildConfig.Environment}-linkManagerHandler`,
`/aws/lambda/${buildConfig.Environment}-linkTopicProcessor`,
`/aws/lambda/${buildConfig.Environment}-processTargetAccountSMListenerHandler`,
];
const permissionSetAPILogGroupNames: Array<string> = [
`/aws/lambda/${buildConfig.Environment}-psApiHandler`,
`/aws/lambda/${buildConfig.Environment}-permissionSetTopicProcessor`,
`/aws/lambda/${buildConfig.Environment}-permissionSetSyncHandler`,
];
const ssoGroupLogGroupNames: Array<string> = [
`/aws/lambda/${buildConfig.Environment}-linkManagerHandler`,
`/aws/lambda/${buildConfig.Environment}-processTargetAccountSMListenerHandler`,
`/aws/lambda/${buildConfig.Environment}-ssoGroupHandler`,
];
const ssoUserLogGroupNames: Array<string> = [
`/aws/lambda/${buildConfig.Environment}-linkManagerHandler`,
`/aws/lambda/${buildConfig.Environment}-processTargetAccountSMListenerHandler`,
`/aws/lambda/${buildConfig.Environment}-ssoUserHandler`,
];
const permissionSetSyncLogGroupNames: Array<string> = [
`/aws/lambda/${buildConfig.Environment}-linkManagerHandler`,
`/aws/lambda/${buildConfig.Environment}-processTargetAccountSMListenerHandler`,
`/aws/lambda/${buildConfig.Environment}-permissionSetSyncHandler`,
];
const orgEventsLogGroupNames: Array<string> = [
`/aws/lambda/${buildConfig.Environment}-linkManagerHandler`,
`/aws/lambda/${buildConfig.Environment}-processTargetAccountSMListenerHandler`,
`/aws/lambda/${buildConfig.Environment}-orgEventsHandler`,
];
//Get RequestDetails for accountAssignmentAPI flows
new CfnQueryDefinition(
this,
name(buildConfig, "accountAssignmentAPIFlows-getRequestDetails"),
{
name: name(buildConfig, "accountAssignmentAPIFlows-getRequestDetails"),
queryString:
"filter requestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: accountAssignmentAPILogGroupNames,
}
);
//Get Related RequestDetails for accountAssignmentAPI flows
new CfnQueryDefinition(
this,
name(buildConfig, "accountAssignmentAPIFlows-getRelateedRequestDetails"),
{
name: name(
buildConfig,
"accountAssignmentAPIFlows-getRelateedRequestDetails"
),
queryString:
"filter sourceRequestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: accountAssignmentAPILogGroupNames,
}
);
//Get RequestDetails for permissionSetAPI flows
new CfnQueryDefinition(
this,
name(buildConfig, "permissionSetAPIFlows-getRequestDetails"),
{
name: name(buildConfig, "permissionSetAPIFlows-getRequestDetails"),
queryString:
"filter requestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: permissionSetAPILogGroupNames,
}
);
//Get Related RequestDetails for permissionSetAPI flows
new CfnQueryDefinition(
this,
name(buildConfig, "permissionSetAPIFlows-getRelateedRequestDetails"),
{
name: name(
buildConfig,
"permissionSetAPIFlows-getRelateedRequestDetails"
),
queryString:
"filter sourceRequestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: permissionSetAPILogGroupNames,
}
);
//Get RequestDetails for SSO group trigger flows
new CfnQueryDefinition(
this,
name(buildConfig, "ssoGroupTriggerFlows-getRequestDetails"),
{
name: name(buildConfig, "ssoGroupTriggerFlows-getRequestDetails"),
queryString:
"fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp desc | limit 100 | filter ispresent(requestId)",
logGroupNames: ssoGroupLogGroupNames,
}
);
//Get Related RequestDetails for SSO group trigger flows
new CfnQueryDefinition(
this,
name(buildConfig, "ssoGroupTriggerFlows-getRelateedRequestDetails"),
{
name: name(
buildConfig,
"ssoGroupTriggerFlows-getRelateedRequestDetails"
),
queryString:
"filter sourceRequestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: ssoGroupLogGroupNames,
}
);
//Get RequestDetails for SSO user trigger flows
new CfnQueryDefinition(
this,
name(buildConfig, "ssoUserTriggerFlows-getRequestDetails"),
{
name: name(buildConfig, "ssoUserTriggerFlows-getRequestDetails"),
queryString:
"fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp desc | limit 100 | filter ispresent(requestId)",
logGroupNames: ssoUserLogGroupNames,
}
);
//Get Related RequestDetails for SSO user trigger flows
new CfnQueryDefinition(
this,
name(buildConfig, "ssoUserTriggerFlows-getRelateedRequestDetails"),
{
name: name(
buildConfig,
"ssoUserTriggerFlows-getRelateedRequestDetails"
),
queryString:
"filter sourceRequestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: ssoUserLogGroupNames,
}
);
//Get RequestDetails for permission set sync trigger flow
new CfnQueryDefinition(
this,
name(buildConfig, "permissionSetSyncTriggerFlows-getRequestDetails"),
{
name: name(
buildConfig,
"permissionSetSyncTriggerFlows-getRequestDetails"
),
queryString:
"fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp desc | limit 100 | filter ispresent(requestId)",
logGroupNames: permissionSetSyncLogGroupNames,
}
);
//Get Related RequestDetails for permission set sync trigger flows
new CfnQueryDefinition(
this,
name(
buildConfig,
"permissionSetSyncTriggerFlows-getRelateedRequestDetails"
),
{
name: name(
buildConfig,
"permissionSetSyncTriggerFlows-getRelateedRequestDetails"
),
queryString:
"filter sourceRequestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: permissionSetSyncLogGroupNames,
}
);
//Get RequestDetails for org events trigger flow
new CfnQueryDefinition(
this,
name(buildConfig, "orgEventsTriggerFlows-getRequestDetails"),
{
name: name(buildConfig, "orgEventsTriggerFlows-getRequestDetails"),
queryString:
"fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp desc | limit 100 | filter ispresent(requestId)",
logGroupNames: orgEventsLogGroupNames,
}
);
//Get Related RequestDetails for org events trigger flows
new CfnQueryDefinition(
this,
name(buildConfig, "orgEventsTriggerFlows-getRelateedRequestDetails"),
{
name: name(
buildConfig,
"orgEventsTriggerFlows-getRelateedRequestDetails"
),
queryString:
"filter sourceRequestId like '' | fields requestId, handler, relatedData, status, statusMessage, relatedData, hasRelatedRequests, sourceRequestId | sort @timestamp asc",
logGroupNames: orgEventsLogGroupNames,
}
);
}