Attempt to fix usage tests
This commit is contained in:
parent
31bd5cbeda
commit
78f65401e8
|
@ -354,8 +354,8 @@ App::get('/v1/functions/usage')
|
|||
$period = $periods[$range]['period'];
|
||||
|
||||
$requestDocs = $dbForProject->find('stats', [
|
||||
new Query('period', Query::TYPE_EQUAL, [$period]),
|
||||
new Query('metric', Query::TYPE_EQUAL, [$metric]),
|
||||
Query::equal('period', [$period]),
|
||||
Query::equal('metric', [$metric]),
|
||||
], $limit, 0, ['time'], [Database::ORDER_DESC]);
|
||||
|
||||
$stats[$metric] = [];
|
||||
|
|
|
@ -130,15 +130,15 @@ class DeletesV1 extends Worker
|
|||
protected function deleteCacheByResource(string $projectId): void
|
||||
{
|
||||
$this->deleteCacheFiles([
|
||||
new Query('resource', Query::TYPE_EQUAL, [$this->args['resource']])
|
||||
]);
|
||||
Query::equal('resource', [$this->args['resource']]),
|
||||
]);
|
||||
}
|
||||
|
||||
protected function deleteCacheByTimestamp(): void
|
||||
{
|
||||
$this->deleteCacheFiles([
|
||||
new Query('accessedAt', Query::TYPE_LESSER, [$this->args['timestamp']])
|
||||
]);
|
||||
Query::lessThan('accessedAt', $this->args['timestamp']),
|
||||
]);
|
||||
}
|
||||
|
||||
protected function deleteCacheFiles($query): void
|
||||
|
|
2
composer.lock
generated
2
composer.lock
generated
|
@ -5390,5 +5390,5 @@
|
|||
"platform-overrides": {
|
||||
"php": "8.0"
|
||||
},
|
||||
"plugin-api-version": "2.2.0"
|
||||
"plugin-api-version": "2.3.0"
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
namespace Appwrite\Usage\Calculators;
|
||||
|
||||
use DateTime;
|
||||
use Utopia\Database\Database as UtopiaDatabase;
|
||||
use Utopia\Database\Document;
|
||||
use Utopia\Database\Query;
|
||||
|
@ -180,28 +181,29 @@ class Aggregator extends Database
|
|||
|
||||
protected function aggregateDailyMetric(string $projectId, string $metric): void
|
||||
{
|
||||
$beginOfDay = strtotime("today");
|
||||
$endOfDay = strtotime("tomorrow", $beginOfDay) - 1;
|
||||
$beginOfDay = DateTime::createFromFormat('Y-m-d\TH:i:s.v', \date('Y-m-d\T00:00:00.000'))->format(DateTime::RFC3339);
|
||||
$endOfDay = DateTime::createFromFormat('Y-m-d\TH:i:s.v', \date('Y-m-d\T23:59:59.999'))->format(DateTime::RFC3339);
|
||||
|
||||
$this->database->setNamespace('_' . $projectId);
|
||||
$value = (int) $this->database->sum('stats', 'value', [
|
||||
new Query('metric', Query::TYPE_EQUAL, [$metric]),
|
||||
new Query('period', Query::TYPE_EQUAL, ['30m']),
|
||||
new Query('time', Query::TYPE_GREATEREQUAL, [$beginOfDay]),
|
||||
new Query('time', Query::TYPE_LESSEREQUAL, [$endOfDay]),
|
||||
Query::equal('metric', [$metric]),
|
||||
Query::equal('period', ['30m']),
|
||||
Query::greaterThanEqual('time', $beginOfDay),
|
||||
Query::lessThanEqual('time', $endOfDay),
|
||||
]);
|
||||
$this->createOrUpdateMetric($projectId, $metric, '1d', $beginOfDay, $value);
|
||||
}
|
||||
|
||||
protected function aggregateMonthlyMetric(string $projectId, string $metric): void
|
||||
{
|
||||
$beginOfMonth = strtotime("first day of the month");
|
||||
$endOfMonth = strtotime("last day of the month");
|
||||
$beginOfMonth = DateTime::createFromFormat('Y-m-d\TH:i:s.v', \date('Y-m-01\T00:00:00.000'))->format(DateTime::RFC3339);
|
||||
$endOfMonth = DateTime::createFromFormat('Y-m-d\TH:i:s.v', \date('Y-m-t\T23:59:59.999'))->format(DateTime::RFC3339);
|
||||
$this->database->setNamespace('_' . $projectId);
|
||||
$value = (int) $this->database->sum('stats', 'value', [
|
||||
new Query('metric', Query::TYPE_EQUAL, [$metric]),
|
||||
new Query('period', Query::TYPE_EQUAL, ['1d']),
|
||||
new Query('time', Query::TYPE_GREATEREQUAL, [$beginOfMonth]),
|
||||
new Query('time', Query::TYPE_LESSEREQUAL, [$endOfMonth]),
|
||||
Query::equal('metric', [$metric]),
|
||||
Query::equal('period', ['1d']),
|
||||
Query::greaterThanEqual('time', $beginOfMonth),
|
||||
Query::lessThanEqual('time', $endOfMonth),
|
||||
]);
|
||||
$this->createOrUpdateMetric($projectId, $metric, '1mo', $beginOfMonth, $value);
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ namespace Appwrite\Usage\Calculators;
|
|||
|
||||
use Exception;
|
||||
use Appwrite\Usage\Calculator;
|
||||
use DateTime;
|
||||
use Utopia\Database\Database as UtopiaDatabase;
|
||||
use Utopia\Database\Document;
|
||||
use Utopia\Database\Exception\Authorization;
|
||||
|
@ -60,7 +61,7 @@ class Database extends Calculator
|
|||
|
||||
// Required for billing
|
||||
if ($monthly) {
|
||||
$time = strtotime("first day of the month");
|
||||
$time = DateTime::createFromFormat('Y-m-d\TH:i:s.v', \date('Y-m-01\T00:00:00.000'))->format(DateTime::RFC3339);
|
||||
$this->createOrUpdateMetric($projectId, $metric, '1mo', $time, $value);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -387,7 +387,7 @@ class TimeSeries extends Calculator
|
|||
}
|
||||
}
|
||||
|
||||
$time = \strtotime($point['time']);
|
||||
$time = DateTime::createFromFormat('U', \strtotime($point['time']))->format(DateTime::RFC3339);
|
||||
$value = (!empty($point['value'])) ? $point['value'] : 0;
|
||||
|
||||
$this->createOrUpdateMetric(
|
||||
|
|
Loading…
Reference in a new issue