Есть ли способ визуализировать данные кэша узлов, аналогичный redis-commander для Redis?
На самом деле я использую node-cache для кэширования данных API, иногда я сталкиваюсь с проблемой в производственной среде, которую я могу устранить только через журналы консоли, и если я добавлю консольный журнал для node-cache в каждой строке, это будет беспорядок. кодировать также и для консоли. Я хотел увидеть какое-нибудь веб-решение для мониторинга значений.
Я пытался разделить журналы в текстовом файле для последних значений, но это снижает производительность API, поэтому я ищу какое-нибудь веб-решение.
Для node-cache не существует прямого инструмента, такого как redis-commander, который предоставлял бы веб-интерфейс для визуализации данных кэша. Однако вы можете создать простое решение, используя Express.js, для создания собственной информационной панели.
Вы можете попробовать создать свой собственный экспресс-сервер и запросить данные кэша узлов через API, но для этой цели уже создан пользовательский интерфейс.
Вы можете попробовать пакет npm node-cache-commander
,
Фрагмент кода:
const {
initializeNodeCacheCommander,
addNodeCacheInstance,
} = require("node-cache-commander"); //Import
const NodeCache = require("node-cache"); //Import Node-cache
initializeNodeCacheCommander(3000, "USERNAME", "PASSWORD"); //
const myCache = new NodeCache(); //Initialize node-cache instance
const myCache2 = new NodeCache(); //Initialize node-cache instance if needed (just for example here)
let obj = { my: "Special", variable: 42 }; //
myCache.set("myKey", obj, 10000); // Set values
let obj2 = { my: "Special2", variable: 42 }; //
myCache2.set("myKey1", obj, 10000); // Set Values
addNodeCacheInstance({ name: "Node-instance-1", v: myCache }); //Add instance to node-cache-commander to monitor
addNodeCacheInstance({ name: "Node-instance-2", v: myCache2 }); //Add instance to node-cache-commander to monitor
Вы можете перейти в веб-браузер, используя ip/localhost:3000, для визуализации данных. Обязательно укажите правильные учетные данные во время инициализации.
После тестирования я думаю, что это работает хорошо.