Skip to content

Commit d5ae6cd

Browse files
warwickschroederjasontaylordev
authored andcommitted
Remove concept of Partially Available
1 parent 53f7900 commit d5ae6cd

File tree

5 files changed

+16
-36
lines changed

5 files changed

+16
-36
lines changed

src/Frontend/src/components/platformcapabilities/CapabilityCard.vue

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@ const props = defineProps<{
1919
<template>
2020
<div
2121
class="capability-card"
22+
data-testid="capability-card"
2223
:class="{
2324
'capability-available': !props.isLoading && props.status === CapabilityStatus.Available,
24-
'capability-partially-available': !props.isLoading && props.status === CapabilityStatus.PartiallyAvailable,
2525
'capability-unavailable': !props.isLoading && props.status === CapabilityStatus.Unavailable,
2626
'capability-loading': props.isLoading,
2727
'capability-notconfigured': !props.isLoading && props.status === CapabilityStatus.NotConfigured,
@@ -37,22 +37,21 @@ const props = defineProps<{
3737
class="capability-icon"
3838
:class="{
3939
'text-success': props.status === CapabilityStatus.Available,
40-
'text-warning': props.status === CapabilityStatus.PartiallyAvailable,
4140
'text-danger': props.status === CapabilityStatus.Unavailable,
4241
'text-info': props.status === CapabilityStatus.NotConfigured,
4342
}"
4443
/>
4544
<div class="capability-info">
4645
<div class="capability-title-row">
47-
<div class="capability-title">{{ props.title }}</div>
46+
<h6 class="capability-title">{{ props.title }}</h6>
4847
<div v-if="props.indicators" class="status-indicators">
49-
<div v-for="indicator in props.indicators" :key="indicator.label" class="indicator-item" v-tippy="indicator.tooltip">
48+
<div v-for="indicator in props.indicators" :key="indicator.label" class="indicator-item" data-testid="status-indicator" v-tippy="indicator.tooltip">
5049
<FAIcon
5150
:icon="faCircle"
5251
class="indicator-light"
5352
:class="{
5453
'light-success': indicator.status === CapabilityStatus.Available,
55-
'light-warning': indicator.status === CapabilityStatus.PartiallyAvailable,
54+
'light-warning': indicator.status === CapabilityStatus.NotConfigured,
5655
'light-danger': indicator.status === CapabilityStatus.Unavailable,
5756
}"
5857
/>
@@ -67,7 +66,6 @@ const props = defineProps<{
6766
class="status-badge"
6867
:class="{
6968
'status-available': props.status === CapabilityStatus.Available,
70-
'status-partially-available': props.status === CapabilityStatus.PartiallyAvailable,
7169
'status-unavailable': props.status === CapabilityStatus.Unavailable,
7270
}"
7371
>

src/Frontend/src/components/platformcapabilities/capabilities/AuditingCapability.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ export function useAuditingCapability(testResults: Ref<ConnectionTestResults | n
9797

9898
indicators.push({
9999
label: "Messages",
100-
status: messagesAvailable ? CapabilityStatus.Available : CapabilityStatus.PartiallyAvailable,
100+
status: messagesAvailable ? CapabilityStatus.Available : CapabilityStatus.NotConfigured,
101101
tooltip: messageTooltip,
102102
});
103103
}

src/Frontend/src/components/platformcapabilities/capabilities/MonitoringCapability.ts

Lines changed: 9 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { computed } from "vue";
22
import { CapabilityStatus, StatusIndicator } from "@/components/platformcapabilities/types";
3-
import { faCheck, faTimes, faExclamationTriangle, faInfoCircle, type IconDefinition } from "@fortawesome/free-solid-svg-icons";
3+
import { faCheck, faTimes, faInfoCircle, type IconDefinition } from "@fortawesome/free-solid-svg-icons";
44
import { storeToRefs } from "pinia";
55
import { useServiceControlStore } from "@/stores/ServiceControlStore";
66
import { useMonitoringStore } from "@/stores/MonitoringStore";
@@ -28,11 +28,6 @@ export function useMonitoringCapability() {
2828
const isConfiguredInServiceControl = isMonitoringEnabled.value;
2929
const connectionSuccessful = monitoringConnectionState.connected && !monitoringConnectionState.unableToConnect;
3030

31-
// Promo mode - not configured
32-
if (!isConfiguredInServiceControl) {
33-
return CapabilityStatus.NotConfigured;
34-
}
35-
3631
// Disabled - configured but not responding
3732
if (isConfiguredInServiceControl && !connectionSuccessful) {
3833
return CapabilityStatus.Unavailable;
@@ -44,7 +39,7 @@ export function useMonitoringCapability() {
4439
}
4540

4641
// Monitoring is configured and connected but no endpoints are sending data
47-
return CapabilityStatus.PartiallyAvailable;
42+
return CapabilityStatus.NotConfigured;
4843
});
4944

5045
const monitoringIcon = computed<IconDefinition>(() => {
@@ -56,10 +51,6 @@ export function useMonitoringCapability() {
5651
return faCheck;
5752
}
5853

59-
if (monitoringStatus.value === CapabilityStatus.PartiallyAvailable) {
60-
return faExclamationTriangle;
61-
}
62-
6354
// Unavailable
6455
return faTimes;
6556
});
@@ -73,11 +64,7 @@ export function useMonitoringCapability() {
7364
return MonitoringCardDescription.Available;
7465
}
7566

76-
if (monitoringStatus.value === CapabilityStatus.PartiallyAvailable) {
77-
return MonitoringCardDescription.PartiallyAvailable;
78-
}
79-
80-
// Uavailable
67+
// Unavailable
8168
return MonitoringCardDescription.Unavailable;
8269
});
8370

@@ -88,20 +75,17 @@ export function useMonitoringCapability() {
8875
const connectionSuccessful = monitoringConnectionState.connected && !monitoringConnectionState.unableToConnect;
8976
const instanceAvailable = isMonitoringEnabled.value && connectionSuccessful;
9077

91-
// no indicators shown in promo mode
92-
if (monitoringStatus.value !== CapabilityStatus.NotConfigured) {
93-
indicators.push({
94-
label: "Instance",
95-
status: instanceAvailable ? CapabilityStatus.Available : CapabilityStatus.Unavailable,
96-
tooltip: instanceAvailable ? MonitoringIndicatorTooltip.InstanceAvailable : !isMonitoringEnabled.value ? MonitoringIndicatorTooltip.InstanceNotConfigured : MonitoringIndicatorTooltip.InstanceUnavailable,
97-
});
98-
}
78+
indicators.push({
79+
label: "Instance",
80+
status: instanceAvailable ? CapabilityStatus.Available : CapabilityStatus.Unavailable,
81+
tooltip: instanceAvailable ? MonitoringIndicatorTooltip.InstanceAvailable : !isMonitoringEnabled.value ? MonitoringIndicatorTooltip.InstanceNotConfigured : MonitoringIndicatorTooltip.InstanceUnavailable,
82+
});
9983

10084
// data available indicator - only show if instance is connected
10185
if (instanceAvailable) {
10286
indicators.push({
10387
label: "Metrics",
104-
status: !endpointListIsEmpty.value ? CapabilityStatus.Available : CapabilityStatus.PartiallyAvailable,
88+
status: !endpointListIsEmpty.value ? CapabilityStatus.Available : CapabilityStatus.NotConfigured,
10589
tooltip: !endpointListIsEmpty.value ? MonitoringIndicatorTooltip.DataAvailable : MonitoringIndicatorTooltip.DataUnavailable,
10690
});
10791
}

src/Frontend/src/components/platformcapabilities/constants.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import { minimumSCVersionForAllMessages } from "@/components/audit/isAllMessagesSupported";
22

33
export enum MonitoringCardDescription {
4-
NotConfigured = "Enable real-time endpoint performance monitoring to track throughput, processing times, and system health across your entire distributed system.",
4+
NotConfigured = "Monitoring instance is connected but no endpoints are sending throughput data. This may be because no endpoints are running or no endpoints have the monitoring plugin enabled.",
55
Unavailable = "Monitoring instance is not responding",
6-
PartiallyAvailable = "Monitoring instance is connected but no endpoints are sending throughput data. This may be because no endpoints are running or no endpoints have the monitoring plugin enabled.",
76
Available = "Monitoring is available and receiving throughput data from endpoints",
87
}
98

@@ -16,7 +15,7 @@ export enum MonitoringIndicatorTooltip {
1615
}
1716

1817
export enum AuditingCardDescription {
19-
NotConfigured = "Auditing instance is connected but no successful messages have been processed yet or you don't have auditing enabled for any endpoints. Enable auditing to track message flow and processing across your distributed system.",
18+
NotConfigured = "Auditing instance is connected but no successful messages have been processed yet or you don't have auditing enabled for any endpoints.",
2019
Unavailable = "Auditing instance is not responding",
2120
NotSupported = `Auditing instance is connected but the "All Messages" feature requires ServiceControl ${minimumSCVersionForAllMessages} or higher.`,
2221
Available = "Auditing is available and processing successful messages",

src/Frontend/src/components/platformcapabilities/types.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ export interface StatusIndicator {
77
export enum CapabilityStatus {
88
Unavailable = "Unavailable", // Instance is configured but not responding or not available
99
Available = "Available", // Instance is available and responding
10-
PartiallyAvailable = "Data Unavailable", // Instance is available but not data is flowing for reasons
1110
NotConfigured = "Not Configured", // Instance is not configured. Promo should be shown
1211
}
1312

0 commit comments

Comments
 (0)