added helper makefile
This commit is contained in:
parent
c1621589a2
commit
240a49065d
@ -1,6 +1,9 @@
|
|||||||
|
import { useMemo } from 'react';
|
||||||
|
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
|
|
||||||
|
import { useRouteServersMap }
|
||||||
|
from 'app/context/route-servers';
|
||||||
import { useApiStatus }
|
import { useApiStatus }
|
||||||
from 'app/context/api-status';
|
from 'app/context/api-status';
|
||||||
import { useRoutesLoading }
|
import { useRoutesLoading }
|
||||||
@ -12,6 +15,37 @@ import RelativeTime
|
|||||||
from 'app/components/datetime/RelativeTime';
|
from 'app/components/datetime/RelativeTime';
|
||||||
|
|
||||||
|
|
||||||
|
const RefreshIncomplete = () => {
|
||||||
|
const routeServers = useRouteServersMap();
|
||||||
|
const status = useApiStatus();
|
||||||
|
const sources = status.store?.routes?.sources;
|
||||||
|
|
||||||
|
let notInitialized = useMemo(() => {
|
||||||
|
let missing = [];
|
||||||
|
for (const id in sources) {
|
||||||
|
if (sources[id].initialized) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
missing.push(routeServers[id].name);
|
||||||
|
}
|
||||||
|
return missing;
|
||||||
|
}, [routeServers, sources]);
|
||||||
|
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<p className="text-danger">
|
||||||
|
Routes refresh was incomplete and results are missing
|
||||||
|
from:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
{notInitialized.map((name) =>
|
||||||
|
<span key={name}>{name}<br /></span>
|
||||||
|
)}
|
||||||
|
<br />
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const RefreshState = () => {
|
const RefreshState = () => {
|
||||||
@ -23,7 +57,17 @@ const RefreshState = () => {
|
|||||||
const cachedAt = moment.utc(status.cachedAt);
|
const cachedAt = moment.utc(status.cachedAt);
|
||||||
const cacheTtl = moment.utc(status.ttlTime);
|
const cacheTtl = moment.utc(status.ttlTime);
|
||||||
|
|
||||||
|
const storeInitialized = status.store?.routes?.initialized === true;
|
||||||
|
|
||||||
if (cacheTtl.isBefore(moment.utc())) {
|
if (cacheTtl.isBefore(moment.utc())) {
|
||||||
|
if (!storeInitialized) {
|
||||||
|
return (
|
||||||
|
<li>
|
||||||
|
Routes cache is currently being refreshed.
|
||||||
|
</li>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// This means cache is currently being rebuilt
|
// This means cache is currently being rebuilt
|
||||||
return (
|
return (
|
||||||
<li>
|
<li>
|
||||||
@ -37,6 +81,15 @@ const RefreshState = () => {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!storeInitialized) {
|
||||||
|
return (
|
||||||
|
<li>
|
||||||
|
<RefreshIncomplete />
|
||||||
|
Next refresh in <b><RelativeTime value={cacheTtl} futureEvent={true} /></b>.
|
||||||
|
</li>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<li>
|
<li>
|
||||||
Routes cache was built <b><RelativeTime fuzzyNow={5} value={cachedAt} /> </b>
|
Routes cache was built <b><RelativeTime fuzzyNow={5} value={cachedAt} /> </b>
|
||||||
|
@ -35,6 +35,7 @@ export const ApiStatusProvider = ({children, api}) => {
|
|||||||
generatedAt: generatedAt,
|
generatedAt: generatedAt,
|
||||||
age: age,
|
age: age,
|
||||||
requestDurationMs: api.request_duration_ms,
|
requestDurationMs: api.request_duration_ms,
|
||||||
|
store: api.store_status,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user