Когда я попал в подобную ситуацию, я написал второго демона (или имел второго слушателя в существующем демоне), чтобы заменить CLI, прослушивая определенный порт и отвечая на очень ограниченный набор команд по вашему выбору.
В этом случае все, что вас действительно волнует, - это запуск функции по требованию, так что вы можете даже запустить ее при подключении ко второму порту и затем сообщить результаты обратно в сокет.
Кстати, я настоятельно рекомендую убедиться, что ваша встроенная система имеет более общий механизм для записи информации в постоянное хранилище и извлечения этого журнала. Это не должно быть системным журналом или чем-то таким сложным. Но вы захотите, чтобы эта возможность в будущем позволила провести судебный анализ проблем на местах.