public void InsertPoolStats(IDbConnection con, IDbTransaction tx, PoolStats stats)
        {
            var mapped = mapper.Map <Entities.PoolStats>(stats);

            var query = "INSERT INTO poolstats(poolid, connectedminers, poolhashrate, created) " +
                        "VALUES(@poolid, @connectedminers, @poolhashrate, @created)";

            con.Execute(query, mapped, tx);
        }
Example #2
0
    public async Task InsertPoolStatsAsync(IDbConnection con, IDbTransaction tx, PoolStats stats, CancellationToken ct)
    {
        var mapped = mapper.Map <Entities.PoolStats>(stats);

        const string query = @"INSERT INTO poolstats(poolid, connectedminers, poolhashrate, networkhashrate,
            networkdifficulty, lastnetworkblocktime, blockheight, connectedpeers, sharespersecond, created)
            VALUES(@poolid, @connectedminers, @poolhashrate, @networkhashrate, @networkdifficulty,
            @lastnetworkblocktime, @blockheight, @connectedpeers, @sharespersecond, @created)";

        await con.ExecuteAsync(new CommandDefinition(query, mapped, tx, cancellationToken : ct));
    }
Example #3
0
        public async Task InsertPoolStatsAsync(IDbConnection con, IDbTransaction tx, PoolStats stats)
        {
            logger.LogInvoke();

            var mapped = mapper.Map <Entities.PoolStats>(stats);

            const string query = "INSERT INTO poolstats(poolid, connectedminers, poolhashrate, networkhashrate, " +
                                 "networkdifficulty, lastnetworkblocktime, blockheight, connectedpeers, sharespersecond, created) " +
                                 "VALUES(@poolid, @connectedminers, @poolhashrate, @networkhashrate, @networkdifficulty, " +
                                 "@lastnetworkblocktime, @blockheight, @connectedpeers, @sharespersecond, @created)";

            await con.ExecuteAsync(query, mapped, tx);
        }
Example #4
0
        private string FormatStats(HttpRoute route)
        {
            StringBuilder buf    = new StringBuilder();
            PoolStats     totals = this.pool.GetTotalStats();
            PoolStats     stats  = this.pool.GetStats(route);

            buf.Append("[total kept alive: ").Append(totals.GetAvailable()).Append("; ");
            buf.Append("route allocated: ").Append(stats.GetLeased() + stats.GetAvailable());
            buf.Append(" of ").Append(stats.GetMax()).Append("; ");
            buf.Append("total allocated: ").Append(totals.GetLeased() + totals.GetAvailable()
                                                   );
            buf.Append(" of ").Append(totals.GetMax()).Append("]");
            return(buf.ToString());
        }
Example #5
0
        public virtual PoolStats GetStats(PoolStatsRequest request)
        {
            var stats = new PoolStats();

            lock (_arrayPools)
            {
                foreach (var arrayPoolType in System.Enum.GetValues(typeof(ArrayPoolType)) as int[])
                {
                    var arrayPool = _arrayPools[arrayPoolType];

                    if (arrayPool != null)
                    {
                        stats.ArrayPoolStats[(ArrayPoolType)arrayPoolType] = arrayPool.GetStats();
                    }
                }
            }
            lock (_objectPools)
            {
                foreach (var objectPoolType in System.Enum.GetValues(typeof(ObjectPoolType)) as int[])
                {
                    var objectPool = _objectPools[objectPoolType];

                    if (objectPool != null)
                    {
                        var objectPoolStats = objectPool.GetStats();

                        if (objectPoolStats.IsSimpleObjectPool)
                        {
                            stats.SimpleObjectPoolStats[(ObjectPoolType)objectPoolType] = objectPoolStats;
                        }
                        else
                        {
                            stats.ObjectPoolStats[(ObjectPoolType)objectPoolType] = objectPoolStats;
                        }
                    }
                }
            }
            return(stats);
        }