feat: pass down dynatraceBaseUrl as prop

Signed-off-by: Isaiah Thiessen <isaiah.thiessen@telus.com>
This commit is contained in:
Isaiah Thiessen
2022-06-23 12:45:17 -07:00
parent e4e92abbda
commit 3e9b0cbcd9
2 changed files with 17 additions and 8 deletions
@@ -25,10 +25,11 @@ import { InfoCard } from '@backstage/core-components';
type ProblemsListProps = {
dynatraceEntityId: string;
dynatraceBaseUrl: string;
};
export const ProblemsList = (props: ProblemsListProps) => {
const { dynatraceEntityId } = props;
const { dynatraceEntityId, dynatraceBaseUrl } = props;
const dynatraceApi = useApi(dynatraceApiRef);
const { value, loading, error } = useAsync(async () => {
return dynatraceApi.getDynatraceProblems(dynatraceEntityId);
@@ -41,9 +42,19 @@ export const ProblemsList = (props: ProblemsListProps) => {
return <Alert severity="error">{error.message}</Alert>;
}
return (
<InfoCard title="Problems" subheader="From the last 2 hours">
<InfoCard
title="Problems"
subheader="From the last 2 hours"
deepLink={{
title: 'View Entity in Dynatrace',
link: `${dynatraceBaseUrl}/#serviceOverview;id=${dynatraceEntityId}`,
}}
>
{value?.totalCount ? (
<ProblemsTable problems={problems || []} />
<ProblemsTable
problems={problems || []}
dynatraceBaseUrl={dynatraceBaseUrl}
/>
) : (
<EmptyState message="No Problems to Report!" />
)}
@@ -17,17 +17,15 @@ import React from 'react';
import { Table, TableColumn } from '@backstage/core-components';
import { DynatraceProblem } from '../../../api/DynatraceApi';
import { ProblemStatus } from '../ProblemStatus';
import { configApiRef } from '@backstage/core-plugin-api';
import { useApi } from '@backstage/core-plugin-api';
import { Link } from '@material-ui/core';
type ProblemsTableProps = {
problems: DynatraceProblem[];
dynatraceBaseUrl: string;
};
export const ProblemsTable = ({ problems }: ProblemsTableProps) => {
const configApi = useApi(configApiRef);
const dynatraceBaseUrl = configApi.getString('dynatrace.baseUrl');
export const ProblemsTable = (props: ProblemsTableProps) => {
const { problems, dynatraceBaseUrl } = props;
const columns: TableColumn[] = [
{
title: 'Title',