test(streaming logs): more test but failed again

This commit is contained in:
2025-03-21 22:06:53 -05:00
parent 93ed2e9ee8
commit 08c9b3404f
3 changed files with 50 additions and 42 deletions

View File

@@ -1,46 +1,49 @@
//import {useEffect, useState} from "react";
import {LstCard} from "../extendedUI/LstCard";
import {CardContent, CardHeader} from "../ui/card";
import {Skeleton} from "../ui/skeleton";
import {Button} from "../ui/button";
import {toast} from "sonner";
// //import {useEffect, useState} from "react";
// import {LstCard} from "../extendedUI/LstCard";
// import {CardContent, CardHeader} from "../ui/card";
// import {Skeleton} from "../ui/skeleton";
// import {Button} from "../ui/button";
// import {toast} from "sonner";
// import {useEffect} from "react";
export default function CycleCountLog() {
//const [logs, setLogs] = useState([]);
//const [streaming, setStreaming] = useState(false); // Track if streaming is active
// export default function CycleCountLog() {
// //const [logs, setLogs] = useState([]);
// //const [streaming, setStreaming] = useState(false); // Track if streaming is active
// useEffect(() => {
// // Start streaming when the button is clicked
// let es;
// useEffect(() => {
// // Start streaming when the button is clicked
// let es;
// es = new EventSource("http://localhost:4000/api/logger/logs/stream?service=ocme-count&level=info");
// es.onopen = () => console.log(">>> Connection opened!");
// es.onerror = (e) => console.log("ERROR!", e);
// es.onmessage = (e) => {
// console.log(">>>", JSON.stringify(e));
// };
// const url = `http://localhost:4000/api/log`;
// return () => es.close();
// }, []); // Effect runs when `streaming` state changes
// es = new EventSource(url, {withCredentials: true});
// es.onopen = () => console.log(">>> Connection opened!");
// es.onerror = (e) => console.log("ERROR!", e);
// es.onmessage = (e) => {
// console.log(">>>", JSON.stringify(e));
// };
// const handleStartStreaming = () => {
// setStreaming(true); // Start streaming when button is clicked
// };
return (
<LstCard className="w-48">
<CardHeader className="flex justify-center">
<span>Cycle Count logs</span>
</CardHeader>
<CardContent>
{Array(10)
.fill(0)
.map((_, i) => (
<div key={i}>
<Skeleton className="m-2 h-4" />
</div>
))}
</CardContent>
<Button onClick={() => toast.success("SOmething")}>Start Stream</Button>
</LstCard>
);
}
// return () => es.close();
// }, []);
// // const handleStartStreaming = () => {
// // setStreaming(true); // Start streaming when button is clicked
// // };
// return (
// <LstCard className="w-48">
// <CardHeader className="flex justify-center">
// <span>Cycle Count logs</span>
// </CardHeader>
// <CardContent>
// {Array(10)
// .fill(0)
// .map((_, i) => (
// <div key={i}>
// <Skeleton className="m-2 h-4" />
// </div>
// ))}
// </CardContent>
// <Button onClick={() => toast.success("SOmething")}>Start Stream</Button>
// </LstCard>
// );
// }

View File

@@ -1,7 +1,7 @@
import type {Context} from "hono";
import {db} from "../../../../database/dbclient.js";
import {and, eq, gt} from "drizzle-orm";
import {streamSSE} from "hono/streaming";
import {streamSSE, streamText} from "hono/streaming";
import {logs} from "../../../../database/schema/logs.js";
export async function streamLogs(c: Context) {

View File

@@ -29,6 +29,11 @@ app.openapi(
}),
async (c) => {
apiHit(c, {endpoint: `api/logger/logs`});
c.header("Access-Control-Allow-Origin", "*"); // Or restrict to a specific origin
c.header("Access-Control-Allow-Headers", "Content-Type");
c.header("Content-Type", "text/event-stream");
c.header("Cache-Control", "no-cache");
c.header("Connection", "keep-alive");
return streamLogs(c);
}
);