CloudWatch: Clear log groups when region is changed (#108727)
This commit is contained in:
+16
-4
@@ -26,14 +26,19 @@ describe('QueryHeader', () => {
|
||||
{ value: 'us-east-2', label: 'us-east-2' },
|
||||
{ value: 'us-east-1', label: 'us-east-1' },
|
||||
]);
|
||||
it('should reset account id if new region is not monitoring account', async () => {
|
||||
it('should reset account id and log groups if new region is not monitoring account', async () => {
|
||||
config.featureToggles.cloudWatchCrossAccountQuerying = true;
|
||||
const onChange = jest.fn();
|
||||
datasource.resources.isMonitoringAccount = jest.fn().mockResolvedValue(false);
|
||||
render(
|
||||
<QueryHeader
|
||||
datasource={datasource}
|
||||
query={{ ...validMetricSearchBuilderQuery, region: 'us-east-1', accountId: 'all' }}
|
||||
query={{
|
||||
...validMetricSearchBuilderQuery,
|
||||
region: 'us-east-1',
|
||||
accountId: 'all',
|
||||
logGroups: [{ arn: 'arn', name: 'name' }],
|
||||
}}
|
||||
onChange={onChange}
|
||||
onRunQuery={jest.fn()}
|
||||
dataIsStale={false}
|
||||
@@ -45,10 +50,11 @@ describe('QueryHeader', () => {
|
||||
...validMetricSearchBuilderQuery,
|
||||
region: 'us-east-2',
|
||||
accountId: undefined,
|
||||
logGroups: [],
|
||||
});
|
||||
});
|
||||
|
||||
it('should not reset account id if new region is a monitoring account', async () => {
|
||||
it('should reset log groups but not account id if new region is a monitoring account', async () => {
|
||||
config.featureToggles.cloudWatchCrossAccountQuerying = true;
|
||||
const onChange = jest.fn();
|
||||
datasource.resources.isMonitoringAccount = jest.fn().mockResolvedValue(true);
|
||||
@@ -56,7 +62,12 @@ describe('QueryHeader', () => {
|
||||
render(
|
||||
<QueryHeader
|
||||
datasource={datasource}
|
||||
query={{ ...validMetricSearchBuilderQuery, region: 'us-east-1', accountId: '123' }}
|
||||
query={{
|
||||
...validMetricSearchBuilderQuery,
|
||||
region: 'us-east-1',
|
||||
accountId: '123',
|
||||
logGroups: [{ arn: 'arn', name: 'name' }],
|
||||
}}
|
||||
onChange={onChange}
|
||||
onRunQuery={jest.fn()}
|
||||
dataIsStale={false}
|
||||
@@ -68,6 +79,7 @@ describe('QueryHeader', () => {
|
||||
...validMetricSearchBuilderQuery,
|
||||
region: 'us-east-2',
|
||||
accountId: '123',
|
||||
logGroups: [],
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -47,9 +47,9 @@ const QueryHeader = ({
|
||||
const onRegionChange = async (region: string) => {
|
||||
if (config.featureToggles.cloudWatchCrossAccountQuerying && isCloudWatchMetricsQuery(query)) {
|
||||
const isMonitoringAccount = await datasource.resources.isMonitoringAccount(region);
|
||||
onChange({ ...query, region, accountId: isMonitoringAccount ? query.accountId : undefined });
|
||||
onChange({ ...query, logGroups: [], region, accountId: isMonitoringAccount ? query.accountId : undefined });
|
||||
} else {
|
||||
onChange({ ...query, region });
|
||||
onChange({ ...query, logGroups: [], region });
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user