feat: add additional logging and write to file
This commit is contained in:
@@ -3,6 +3,7 @@
|
|||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
#include "spoofer.h"
|
#include "spoofer.h"
|
||||||
#include "log-sink-cout.h"
|
#include "log-sink-cout.h"
|
||||||
|
#include "log-sink-file.h"
|
||||||
#include "proxy-configurator.h"
|
#include "proxy-configurator.h"
|
||||||
#include "cache-cleaner.h"
|
#include "cache-cleaner.h"
|
||||||
|
|
||||||
@@ -88,6 +89,7 @@ bool run()
|
|||||||
*/
|
*/
|
||||||
seallib::Logger mainLog("Main");
|
seallib::Logger mainLog("Main");
|
||||||
mainLog.addSink(std::make_shared<ConOutSink>());
|
mainLog.addSink(std::make_shared<ConOutSink>());
|
||||||
|
mainLog.addSink(FileSink::getSharedInstance());
|
||||||
|
|
||||||
mainLog.info("Init");
|
mainLog.info("Init");
|
||||||
|
|
||||||
@@ -141,6 +143,7 @@ bool run()
|
|||||||
}
|
}
|
||||||
|
|
||||||
mainLog.info("Proxy running, Ctrl+C to stop. Check system tray for options.");
|
mainLog.info("Proxy running, Ctrl+C to stop. Check system tray for options.");
|
||||||
|
mainLog.info("Go to https://dbd.neru.rip/ for settings.");
|
||||||
while (running)
|
while (running)
|
||||||
{
|
{
|
||||||
tray.processMessages();
|
tray.processMessages();
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
#include "win-platform.h"
|
#include "win-platform.h"
|
||||||
#include "log-sink-cout.h"
|
#include "log-sink-cout.h"
|
||||||
|
#include "log-sink-file.h"
|
||||||
|
|
||||||
#include <minwinbase.h>
|
#include <minwinbase.h>
|
||||||
#include <wininet.h>
|
#include <wininet.h>
|
||||||
@@ -13,6 +14,7 @@ ProxyConfigurator::ProxyConfigurator()
|
|||||||
{
|
{
|
||||||
_log = new seallib::Logger("ProxyConfigurator");
|
_log = new seallib::Logger("ProxyConfigurator");
|
||||||
_log->addSink(std::make_shared<ConOutSink>());
|
_log->addSink(std::make_shared<ConOutSink>());
|
||||||
|
_log->addSink(FileSink::getSharedInstance());
|
||||||
|
|
||||||
_log->verbose("ProxyConfigurator instantiated");
|
_log->verbose("ProxyConfigurator instantiated");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
#include "spoofer.h"
|
#include "spoofer.h"
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
#include "log-sink-cout.h"
|
#include "log-sink-cout.h"
|
||||||
|
#include "log-sink-file.h"
|
||||||
|
|
||||||
#include <regex>
|
#include <regex>
|
||||||
#include <map>
|
#include <map>
|
||||||
@@ -35,18 +36,19 @@ Spoofer::Spoofer()
|
|||||||
{
|
{
|
||||||
_log = new seallib::Logger("Spoofer");
|
_log = new seallib::Logger("Spoofer");
|
||||||
_log->addSink(std::make_shared<ConOutSink>());
|
_log->addSink(std::make_shared<ConOutSink>());
|
||||||
|
_log->addSink(FileSink::getSharedInstance());
|
||||||
|
|
||||||
_log->info("Spoofer init");
|
_log->verbose("Spoofer init");
|
||||||
|
|
||||||
loadConfig();
|
loadConfig();
|
||||||
|
|
||||||
_log->info("Starting WebSocket server");
|
_log->verbose("Starting WebSocket server");
|
||||||
initServer();
|
initServer();
|
||||||
}
|
}
|
||||||
|
|
||||||
Spoofer::~Spoofer()
|
Spoofer::~Spoofer()
|
||||||
{
|
{
|
||||||
_log->info("Stopping WebSocket server");
|
_log->verbose("Stopping WebSocket server");
|
||||||
stopServer();
|
stopServer();
|
||||||
|
|
||||||
delete _log;
|
delete _log;
|
||||||
@@ -133,6 +135,7 @@ void Spoofer::saveConfig()
|
|||||||
std::string buffer;
|
std::string buffer;
|
||||||
auto errCtx = glz::write_file_json(conf, configPath, buffer);
|
auto errCtx = glz::write_file_json(conf, configPath, buffer);
|
||||||
if (errCtx.ec != glz::error_code::none) _log->error("Failed to save config to {}", configPath);
|
if (errCtx.ec != glz::error_code::none) _log->error("Failed to save config to {}", configPath);
|
||||||
|
_log->verbose("Saved config @ config.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -175,7 +178,7 @@ void Spoofer::wsMessageCallback(std::shared_ptr<ix::ConnectionState> /*connectio
|
|||||||
{
|
{
|
||||||
case ix::WebSocketMessageType::Open:
|
case ix::WebSocketMessageType::Open:
|
||||||
{
|
{
|
||||||
_log->verbose("Websocket connection open, URI: {}", msg->openInfo.uri);
|
_log->verbose("WebSocket connection open, URI: {}", msg->openInfo.uri);
|
||||||
WSMessages::Init initMsg;
|
WSMessages::Init initMsg;
|
||||||
initMsg.profile.camperItems = _camperItems;
|
initMsg.profile.camperItems = _camperItems;
|
||||||
initMsg.profile.camperAddons = _camperAddons;
|
initMsg.profile.camperAddons = _camperAddons;
|
||||||
@@ -203,7 +206,7 @@ void Spoofer::wsMessageCallback(std::shared_ptr<ix::ConnectionState> /*connectio
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ix::WebSocketMessageType::Close:
|
case ix::WebSocketMessageType::Close:
|
||||||
_log->verbose("Websocket connection close");
|
_log->verbose("WebSocket connection close");
|
||||||
break;
|
break;
|
||||||
case ix::WebSocketMessageType::Message:
|
case ix::WebSocketMessageType::Message:
|
||||||
{
|
{
|
||||||
@@ -211,7 +214,7 @@ void Spoofer::wsMessageCallback(std::shared_ptr<ix::ConnectionState> /*connectio
|
|||||||
auto err = glz::read_json(req, msg->str);
|
auto err = glz::read_json(req, msg->str);
|
||||||
if (err.ec != glz::error_code::none)
|
if (err.ec != glz::error_code::none)
|
||||||
{
|
{
|
||||||
_log->error("Failed to parse websocket message");
|
_log->error("Failed to parse WebSocket message");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
switch (req.action)
|
switch (req.action)
|
||||||
@@ -330,13 +333,15 @@ void Spoofer::modifyCharacterInventory(glz::generic& js)
|
|||||||
appendPerks(_slasherPerks);
|
appendPerks(_slasherPerks);
|
||||||
}
|
}
|
||||||
appendItems(_globalOfferings);
|
appendItems(_globalOfferings);
|
||||||
|
|
||||||
|
_log->verbose("Modified inventory for character {}", js["characterName"].get_string());
|
||||||
}
|
}
|
||||||
|
|
||||||
void Spoofer::modifyCharacterData(glz::generic& js)
|
void Spoofer::modifyCharacterData(glz::generic& js)
|
||||||
{
|
{
|
||||||
if (!js.contains("characterName") || !js["characterName"].is_string())
|
if (!js.contains("characterName") || !js["characterName"].is_string())
|
||||||
{
|
{
|
||||||
_log->verbose("attempted to modify invalid char");
|
_log->warning("Attempted to modify invalid character");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -371,6 +376,8 @@ void Spoofer::modifyCharacterData(glz::generic& js)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (_spoofItems || _spoofPerks) modifyCharacterInventory(js);
|
if (_spoofItems || _spoofPerks) modifyCharacterInventory(js);
|
||||||
|
|
||||||
|
_log->verbose("Modified data for character {}", js["characterName"].get_string());
|
||||||
}
|
}
|
||||||
|
|
||||||
void Spoofer::generateBloodweb(glz::generic& js)
|
void Spoofer::generateBloodweb(glz::generic& js)
|
||||||
|
|||||||
Reference in New Issue
Block a user