appwrite/src/Appwrite/Utopia/Response/Model/UsageProject.php

98 lines
2.9 KiB
PHP
Raw Normal View History

<?php
namespace Appwrite\Utopia\Response\Model;
use Appwrite\Utopia\Response;
use Appwrite\Utopia\Response\Model;
class UsageProject extends Model
{
public function __construct()
{
$this
->addRule('range', [
'type' => self::TYPE_STRING,
'description' => 'The time range of the usage stats.',
'default' => '',
'example' => '30d',
])
2023-02-05 20:07:46 +00:00
->addRule('requestsTotal', [
2022-12-12 07:54:53 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for number of requests.',
'default' => [],
'example' => [],
'array' => true
])
->addRule('network', [
2022-10-11 10:34:42 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for consumed bandwidth.',
'default' => [],
2022-10-11 10:34:42 +00:00
'example' => [],
2022-05-23 14:54:50 +00:00
'array' => true
])
2023-02-05 20:07:46 +00:00
->addRule('executionsTotal', [
2022-10-11 10:34:42 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for function executions.',
'default' => [],
2022-10-11 10:34:42 +00:00
'example' => [],
2022-05-23 14:54:50 +00:00
'array' => true
])
2023-02-05 20:07:46 +00:00
->addRule('documentsTotal', [
2022-10-11 10:34:42 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for number of documents.',
'default' => [],
2022-10-11 10:34:42 +00:00
'example' => [],
2022-05-23 14:54:50 +00:00
'array' => true
])
2023-02-05 20:07:46 +00:00
->addRule('databasesTotal', [
2022-10-11 10:34:42 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for number of databases.',
'default' => [],
2022-10-11 10:34:42 +00:00
'example' => [],
2022-05-23 14:54:50 +00:00
'array' => true
])
2023-02-05 20:07:46 +00:00
->addRule('usersTotal', [
2022-10-11 10:34:42 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for number of users.',
'default' => [],
2022-10-11 10:34:42 +00:00
'example' => [],
2022-05-23 14:54:50 +00:00
'array' => true
])
2023-02-05 20:07:46 +00:00
->addRule('filesStorage', [
2022-10-11 10:34:42 +00:00
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for the occupied storage size (in bytes).',
'default' => [],
2022-10-11 10:34:42 +00:00
'example' => [],
2022-05-23 14:54:50 +00:00
'array' => true
])
2023-02-05 20:07:46 +00:00
->addRule('bucketsTotal', [
'type' => Response::MODEL_METRIC,
'description' => 'Aggregated stats for number of buckets.',
'default' => [],
'example' => [],
'array' => true
])
;
}
/**
* Get Name
2022-05-23 14:54:50 +00:00
*
* @return string
*/
2022-05-23 14:54:50 +00:00
public function getName(): string
{
return 'UsageProject';
}
/**
* Get Type
2022-05-23 14:54:50 +00:00
*
* @return string
*/
2022-05-23 14:54:50 +00:00
public function getType(): string
{
return Response::MODEL_USAGE_PROJECT;
}
2022-05-23 14:54:50 +00:00
}