API for stratum server statistics.

Users can pass `--stratum-api` to command line to enable a file called `local/stats` in `--data-api` directory. `local/stats` contains statistics that `StratumServer status` provides but in JSON format. It is currently setup that `local/stats` is updated each time a new job is sent to a worker.
This commit is contained in:
Thomas Clarke
2021-10-02 00:09:42 +01:00
parent 2a3cd13b19
commit 7742d163f7
9 changed files with 110 additions and 8 deletions

View File

@@ -25,13 +25,14 @@ namespace p2pool {
class p2pool_api
{
public:
explicit p2pool_api(const std::string& api_path);
p2pool_api(const std::string& api_path, const bool local_stats);
~p2pool_api();
enum class Category {
GLOBAL,
NETWORK,
POOL,
LOCAL,
};
void on_stop();
@@ -80,6 +81,7 @@ private:
std::string m_apiPath;
std::string m_networkPath;
std::string m_poolPath;
std::string m_localPath;
uv_mutex_t m_dumpDataLock;
std::unordered_map<std::string, std::vector<char>> m_dumpData;