diff options
author | CoprDistGit <infra@openeuler.org> | 2023-06-20 06:57:36 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-06-20 06:57:36 +0000 |
commit | 6de223b7472d59f9ee99fc3408a17f3e694007b1 (patch) | |
tree | 0080af0b1e5663e5efea443b29b316b55a74505c | |
parent | 0fd2754dfbd4396470de878d84188a1882601daa (diff) |
automatic import of python-django-influxdb-metricsopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-django-influxdb-metrics.spec | 799 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 801 insertions, 0 deletions
@@ -0,0 +1 @@ +/django-influxdb-metrics-1.5.0.tar.gz diff --git a/python-django-influxdb-metrics.spec b/python-django-influxdb-metrics.spec new file mode 100644 index 0000000..b9d5d40 --- /dev/null +++ b/python-django-influxdb-metrics.spec @@ -0,0 +1,799 @@ +%global _empty_manifest_terminate_build 0 +Name: python-django-influxdb-metrics +Version: 1.5.0 +Release: 1 +Summary: A reusable Django app that sends metrics about your project to InfluxDB +License: The MIT License +URL: https://github.com/bitmazk/django-influxdb-metrics +Source0: https://mirrors.aliyun.com/pypi/web/packages/f9/3d/3d3ae90fcbd0d25ec93cc562ea1d3c4d03a34cd8c2b7606c4fdb5ef831ec/django-influxdb-metrics-1.5.0.tar.gz +BuildArch: noarch + +Requires: python3-django +Requires: python3-influxdb +Requires: python3-tld +Requires: python3-server-metrics + +%description +# Django InfluxDB Metrics + +A reusable Django app that sends metrics about your project to InfluxDB. + +IMPORTANT NOTE: This release only supports InfluxDB >= 0.9. We have also dropped +a few measurements like CPU, memory and disk-space because +[Telegraf](https://github.com/influxdb/telegraf) can collect these in a much +much better way. + +## Prerequisites + +This module has celery support but you don't have to use it, if you don't want +to. + +## Installation + +To get the latest stable release from PyPi + +.. code-block:: bash + + pip install django-influxdb-metrics + +To get the latest commit from GitHub + +.. code-block:: bash + + pip install -e git+git://github.com/bitmazk/django-influxdb-metrics.git#egg=influxdb_metrics + +Add `influxdb_metrics` to your `INSTALLED_APPS` + +.. code-block:: python + + INSTALLED_APPS = ( + ..., + 'influxdb_metrics', + ) + +## Settings + +You need to set the following settings:: + + INFLUXDB_HOST = 'your.influxdbhost.com' + INFLUXDB_PORT = '8086' + INFLUXDB_USER = 'youruser' + INFLUXDB_PASSWORD = 'yourpassword' + INFLUXDB_DATABASE = 'yourdatabase' + + # This is for tagging the data sent to your influxdb instance so that you + # can query by host + INFLUXDB_TAGS_HOST = 'your_hostname' + + # Seconds to wait for the request to the influxdb server before timing out + INFLUXDB_TIMEOUT = 5 + + # Set this to True if you are using Celery + INFLUXDB_USE_CELERY = True + + # Set this to True if you are not using Celery + INFLUXDB_USE_THREADING = False + +If you would like to disable sending of metrics (i.e. for local development), +you can set:: + + INFLUXDB_DISABLED = True + +If you are having trouble getting the postgresql database size, you might need +to set:: + + INFLUXDB_POSTGRESQL_USE_LOCALHOST = True + +Use ssl with INFLUXDB_HOST:: + + INFLUXDB_SSL = True # default is False + +Optional with ssl:: + + INFLUXDB_VERIFY_SSL = True # default is False + +Specify a prefix for metric measurement names (default is `django_`, E.g. `django_request`) + + INFLUXDB_PREFIX = "my_app" # measurement name == 'my_app_request' + INFLUXDB_PREFIX = "" # measurement name == 'request' + INFLUXDB_PREFIX = None # measurement name == 'request' + +## Usage + +The app comes with several management commands which you should schedule via +crontab. + +### influxdb_get_postgresql_size + +Collects the total disk usage for the given database. + +You can run it like this:: + + ./manage.py influxdb_get_postgresql_size db_role db_name + +You should provide role and name for the database you want to measure. Make +sure that you have a `.pgpass` file in place so that you don't need to enter +a password for this user. + +You could schedule it like this:: + + 0 */1 * * * cd /path/to/project/ && /path/to/venv/bin/python /path/to/project/manage.py influxdb_get_postgresql_size db_role db_name > $HOME/mylogs/cron/influxdb-get-postgresql-size.log 2>&1 + +The measurement created in your InfluxDB will be named `postgresql_size` and +will have the following fields: + +- `value`: The total database size in bytes + +### InfluxDbEmailBackend + +If you would like to track the number of emails sent, you can set your +`EMAIL_BACKEND`:: + + EMAIL_BACKEND = 'influxdb_metrics.email.InfluxDbEmailBackend' + +When the setting is set, metrics will be sent every time you run `.manage.py send_mail`. + +The measurement created in your InfluxDB will be named `django_email_sent` +and will have the following fields: + +- `value`: The number of emails sent + +### InfluxDBRequestMiddleware + +If you would like to track the number and speed of all requests, you can add +the `InfluxDBRequestMiddleware` at the top of your `MIDDLEWARE_CLASSES`:: + + MIDDLEWARE_CLASSES = [ + 'influxdb_metrics.middleware.InfluxDBRequestMiddleware', + ... + ] + +The measurement created in your InfluxDB will be named `django.request` and +will have the following fields: + +- `value`: The request time in milliseconds. + +Additionally, it will have the following tags: + +- `is_ajax`: `true` if it was an AJAX request, otherwise `false` +- `is_authenticated`: `true` if user was authenticated, otherwise `false` +- `is_staff`: `true` if user was a staff user, otherwise `false` +- `is_superuser`: `true` user was a superuser, otherwise `false` +- `method`: The request method (`GET` or `POST`) +- `module`: The python module that handled the request +- `view`: The view class or function that handled the request +- `referer`: The full URL from `request.META['HTTP_REFERER']` +- `referer_tld`: The top level domain of the referer. It tries to be smart + and regards `google.co.uk` as a top level domain (instead of `co.uk`) +- `full_path`: The full path that was requested +- `path`: The path without GET params that was requested +- `campaign`: A value that is extracted from the GET-parameter `campaign`, + if present. You can change the name of this keyword from `campaign` to + anything via the setting `INFLUXDB_METRICS_CAMPAIGN_KEYWORD`. + +If you have a highly frequented site, this table could get big really quick. +You should make sure to create a shard with a low retention time for this +series (i.e. 7d) and add a continuous query to downsample the data into +hourly/daily averages. When doing that, you will obviously lose the detailed +information like `referer` and `referer_tld` but it might make sense to +create a second continuous query to count and downsample at least the +`referer_tld` values. + +NOTE: I don't know what impact this has on overall request time or how much +stress this would put on the InfluxDB server if you get thousands of requests. +It would probably wise to consider something like statsd to aggregate the +requests first and then send them to InfluxDB in bulk. + +### Tracking Users + +This app's `models.py` contains a `post_save` and a `post_delete` handler +which will detect when a user is created or deleted. + +It will create three measurements in your InfluxDB: + +The first one will be named `django_auth_user_create` and will have the +following fields: + +- `value`: 1 + +The second one will be named `django_auth_user_delete` and will have the +following fields: + +- `value`: 1 + +The third one will be named `django_auth_user_count` and will have the +following fields: + +- `value`: The total number of users in the database + +### Tracking User Logins + +This app's `models.py` contains a handler for the `user_logged_in` signal. + +The measurement created in your InfluxDB will be named +`django_auth_user_login` and will have the following fields: + +- `value`: 1 + +### Making Queries + +If you need to get data out of your InfluxDB instance, you can easily do it +like so:: + +from influxdb_metrics.utils import query +query('select \* from series.name', time_precision='s', chunked=False) + +The method declaration is the same as the one in `InfluxDBClient.query()`. +This wrapper simply instanciates a client based on your settings. + +## Contribute + +If you want to contribute to this project, please perform the following steps + +.. code-block:: bash + + # Fork this repository + # Clone your fork + mkvirtualenv -p python3.5 django-influxdb-metrics + make develop + + git co -b feature_branch master + # Implement your feature and tests + git add . && git commit + git push -u origin feature_branch + # Send us a pull request for your feature branch + +## Runing tests + +For running the tests [Docker](https://docs.docker.com/) and +[Docker compose](https://www.docker.com/products/docker-compose) is required. + +The test setup a Influxdb database for testing against real queries. + +In order to run the tests just run the command:: + + ./run_tests_with_docker.sh + + + + +%package -n python3-django-influxdb-metrics +Summary: A reusable Django app that sends metrics about your project to InfluxDB +Provides: python-django-influxdb-metrics +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-django-influxdb-metrics +# Django InfluxDB Metrics + +A reusable Django app that sends metrics about your project to InfluxDB. + +IMPORTANT NOTE: This release only supports InfluxDB >= 0.9. We have also dropped +a few measurements like CPU, memory and disk-space because +[Telegraf](https://github.com/influxdb/telegraf) can collect these in a much +much better way. + +## Prerequisites + +This module has celery support but you don't have to use it, if you don't want +to. + +## Installation + +To get the latest stable release from PyPi + +.. code-block:: bash + + pip install django-influxdb-metrics + +To get the latest commit from GitHub + +.. code-block:: bash + + pip install -e git+git://github.com/bitmazk/django-influxdb-metrics.git#egg=influxdb_metrics + +Add `influxdb_metrics` to your `INSTALLED_APPS` + +.. code-block:: python + + INSTALLED_APPS = ( + ..., + 'influxdb_metrics', + ) + +## Settings + +You need to set the following settings:: + + INFLUXDB_HOST = 'your.influxdbhost.com' + INFLUXDB_PORT = '8086' + INFLUXDB_USER = 'youruser' + INFLUXDB_PASSWORD = 'yourpassword' + INFLUXDB_DATABASE = 'yourdatabase' + + # This is for tagging the data sent to your influxdb instance so that you + # can query by host + INFLUXDB_TAGS_HOST = 'your_hostname' + + # Seconds to wait for the request to the influxdb server before timing out + INFLUXDB_TIMEOUT = 5 + + # Set this to True if you are using Celery + INFLUXDB_USE_CELERY = True + + # Set this to True if you are not using Celery + INFLUXDB_USE_THREADING = False + +If you would like to disable sending of metrics (i.e. for local development), +you can set:: + + INFLUXDB_DISABLED = True + +If you are having trouble getting the postgresql database size, you might need +to set:: + + INFLUXDB_POSTGRESQL_USE_LOCALHOST = True + +Use ssl with INFLUXDB_HOST:: + + INFLUXDB_SSL = True # default is False + +Optional with ssl:: + + INFLUXDB_VERIFY_SSL = True # default is False + +Specify a prefix for metric measurement names (default is `django_`, E.g. `django_request`) + + INFLUXDB_PREFIX = "my_app" # measurement name == 'my_app_request' + INFLUXDB_PREFIX = "" # measurement name == 'request' + INFLUXDB_PREFIX = None # measurement name == 'request' + +## Usage + +The app comes with several management commands which you should schedule via +crontab. + +### influxdb_get_postgresql_size + +Collects the total disk usage for the given database. + +You can run it like this:: + + ./manage.py influxdb_get_postgresql_size db_role db_name + +You should provide role and name for the database you want to measure. Make +sure that you have a `.pgpass` file in place so that you don't need to enter +a password for this user. + +You could schedule it like this:: + + 0 */1 * * * cd /path/to/project/ && /path/to/venv/bin/python /path/to/project/manage.py influxdb_get_postgresql_size db_role db_name > $HOME/mylogs/cron/influxdb-get-postgresql-size.log 2>&1 + +The measurement created in your InfluxDB will be named `postgresql_size` and +will have the following fields: + +- `value`: The total database size in bytes + +### InfluxDbEmailBackend + +If you would like to track the number of emails sent, you can set your +`EMAIL_BACKEND`:: + + EMAIL_BACKEND = 'influxdb_metrics.email.InfluxDbEmailBackend' + +When the setting is set, metrics will be sent every time you run `.manage.py send_mail`. + +The measurement created in your InfluxDB will be named `django_email_sent` +and will have the following fields: + +- `value`: The number of emails sent + +### InfluxDBRequestMiddleware + +If you would like to track the number and speed of all requests, you can add +the `InfluxDBRequestMiddleware` at the top of your `MIDDLEWARE_CLASSES`:: + + MIDDLEWARE_CLASSES = [ + 'influxdb_metrics.middleware.InfluxDBRequestMiddleware', + ... + ] + +The measurement created in your InfluxDB will be named `django.request` and +will have the following fields: + +- `value`: The request time in milliseconds. + +Additionally, it will have the following tags: + +- `is_ajax`: `true` if it was an AJAX request, otherwise `false` +- `is_authenticated`: `true` if user was authenticated, otherwise `false` +- `is_staff`: `true` if user was a staff user, otherwise `false` +- `is_superuser`: `true` user was a superuser, otherwise `false` +- `method`: The request method (`GET` or `POST`) +- `module`: The python module that handled the request +- `view`: The view class or function that handled the request +- `referer`: The full URL from `request.META['HTTP_REFERER']` +- `referer_tld`: The top level domain of the referer. It tries to be smart + and regards `google.co.uk` as a top level domain (instead of `co.uk`) +- `full_path`: The full path that was requested +- `path`: The path without GET params that was requested +- `campaign`: A value that is extracted from the GET-parameter `campaign`, + if present. You can change the name of this keyword from `campaign` to + anything via the setting `INFLUXDB_METRICS_CAMPAIGN_KEYWORD`. + +If you have a highly frequented site, this table could get big really quick. +You should make sure to create a shard with a low retention time for this +series (i.e. 7d) and add a continuous query to downsample the data into +hourly/daily averages. When doing that, you will obviously lose the detailed +information like `referer` and `referer_tld` but it might make sense to +create a second continuous query to count and downsample at least the +`referer_tld` values. + +NOTE: I don't know what impact this has on overall request time or how much +stress this would put on the InfluxDB server if you get thousands of requests. +It would probably wise to consider something like statsd to aggregate the +requests first and then send them to InfluxDB in bulk. + +### Tracking Users + +This app's `models.py` contains a `post_save` and a `post_delete` handler +which will detect when a user is created or deleted. + +It will create three measurements in your InfluxDB: + +The first one will be named `django_auth_user_create` and will have the +following fields: + +- `value`: 1 + +The second one will be named `django_auth_user_delete` and will have the +following fields: + +- `value`: 1 + +The third one will be named `django_auth_user_count` and will have the +following fields: + +- `value`: The total number of users in the database + +### Tracking User Logins + +This app's `models.py` contains a handler for the `user_logged_in` signal. + +The measurement created in your InfluxDB will be named +`django_auth_user_login` and will have the following fields: + +- `value`: 1 + +### Making Queries + +If you need to get data out of your InfluxDB instance, you can easily do it +like so:: + +from influxdb_metrics.utils import query +query('select \* from series.name', time_precision='s', chunked=False) + +The method declaration is the same as the one in `InfluxDBClient.query()`. +This wrapper simply instanciates a client based on your settings. + +## Contribute + +If you want to contribute to this project, please perform the following steps + +.. code-block:: bash + + # Fork this repository + # Clone your fork + mkvirtualenv -p python3.5 django-influxdb-metrics + make develop + + git co -b feature_branch master + # Implement your feature and tests + git add . && git commit + git push -u origin feature_branch + # Send us a pull request for your feature branch + +## Runing tests + +For running the tests [Docker](https://docs.docker.com/) and +[Docker compose](https://www.docker.com/products/docker-compose) is required. + +The test setup a Influxdb database for testing against real queries. + +In order to run the tests just run the command:: + + ./run_tests_with_docker.sh + + + + +%package help +Summary: Development documents and examples for django-influxdb-metrics +Provides: python3-django-influxdb-metrics-doc +%description help +# Django InfluxDB Metrics + +A reusable Django app that sends metrics about your project to InfluxDB. + +IMPORTANT NOTE: This release only supports InfluxDB >= 0.9. We have also dropped +a few measurements like CPU, memory and disk-space because +[Telegraf](https://github.com/influxdb/telegraf) can collect these in a much +much better way. + +## Prerequisites + +This module has celery support but you don't have to use it, if you don't want +to. + +## Installation + +To get the latest stable release from PyPi + +.. code-block:: bash + + pip install django-influxdb-metrics + +To get the latest commit from GitHub + +.. code-block:: bash + + pip install -e git+git://github.com/bitmazk/django-influxdb-metrics.git#egg=influxdb_metrics + +Add `influxdb_metrics` to your `INSTALLED_APPS` + +.. code-block:: python + + INSTALLED_APPS = ( + ..., + 'influxdb_metrics', + ) + +## Settings + +You need to set the following settings:: + + INFLUXDB_HOST = 'your.influxdbhost.com' + INFLUXDB_PORT = '8086' + INFLUXDB_USER = 'youruser' + INFLUXDB_PASSWORD = 'yourpassword' + INFLUXDB_DATABASE = 'yourdatabase' + + # This is for tagging the data sent to your influxdb instance so that you + # can query by host + INFLUXDB_TAGS_HOST = 'your_hostname' + + # Seconds to wait for the request to the influxdb server before timing out + INFLUXDB_TIMEOUT = 5 + + # Set this to True if you are using Celery + INFLUXDB_USE_CELERY = True + + # Set this to True if you are not using Celery + INFLUXDB_USE_THREADING = False + +If you would like to disable sending of metrics (i.e. for local development), +you can set:: + + INFLUXDB_DISABLED = True + +If you are having trouble getting the postgresql database size, you might need +to set:: + + INFLUXDB_POSTGRESQL_USE_LOCALHOST = True + +Use ssl with INFLUXDB_HOST:: + + INFLUXDB_SSL = True # default is False + +Optional with ssl:: + + INFLUXDB_VERIFY_SSL = True # default is False + +Specify a prefix for metric measurement names (default is `django_`, E.g. `django_request`) + + INFLUXDB_PREFIX = "my_app" # measurement name == 'my_app_request' + INFLUXDB_PREFIX = "" # measurement name == 'request' + INFLUXDB_PREFIX = None # measurement name == 'request' + +## Usage + +The app comes with several management commands which you should schedule via +crontab. + +### influxdb_get_postgresql_size + +Collects the total disk usage for the given database. + +You can run it like this:: + + ./manage.py influxdb_get_postgresql_size db_role db_name + +You should provide role and name for the database you want to measure. Make +sure that you have a `.pgpass` file in place so that you don't need to enter +a password for this user. + +You could schedule it like this:: + + 0 */1 * * * cd /path/to/project/ && /path/to/venv/bin/python /path/to/project/manage.py influxdb_get_postgresql_size db_role db_name > $HOME/mylogs/cron/influxdb-get-postgresql-size.log 2>&1 + +The measurement created in your InfluxDB will be named `postgresql_size` and +will have the following fields: + +- `value`: The total database size in bytes + +### InfluxDbEmailBackend + +If you would like to track the number of emails sent, you can set your +`EMAIL_BACKEND`:: + + EMAIL_BACKEND = 'influxdb_metrics.email.InfluxDbEmailBackend' + +When the setting is set, metrics will be sent every time you run `.manage.py send_mail`. + +The measurement created in your InfluxDB will be named `django_email_sent` +and will have the following fields: + +- `value`: The number of emails sent + +### InfluxDBRequestMiddleware + +If you would like to track the number and speed of all requests, you can add +the `InfluxDBRequestMiddleware` at the top of your `MIDDLEWARE_CLASSES`:: + + MIDDLEWARE_CLASSES = [ + 'influxdb_metrics.middleware.InfluxDBRequestMiddleware', + ... + ] + +The measurement created in your InfluxDB will be named `django.request` and +will have the following fields: + +- `value`: The request time in milliseconds. + +Additionally, it will have the following tags: + +- `is_ajax`: `true` if it was an AJAX request, otherwise `false` +- `is_authenticated`: `true` if user was authenticated, otherwise `false` +- `is_staff`: `true` if user was a staff user, otherwise `false` +- `is_superuser`: `true` user was a superuser, otherwise `false` +- `method`: The request method (`GET` or `POST`) +- `module`: The python module that handled the request +- `view`: The view class or function that handled the request +- `referer`: The full URL from `request.META['HTTP_REFERER']` +- `referer_tld`: The top level domain of the referer. It tries to be smart + and regards `google.co.uk` as a top level domain (instead of `co.uk`) +- `full_path`: The full path that was requested +- `path`: The path without GET params that was requested +- `campaign`: A value that is extracted from the GET-parameter `campaign`, + if present. You can change the name of this keyword from `campaign` to + anything via the setting `INFLUXDB_METRICS_CAMPAIGN_KEYWORD`. + +If you have a highly frequented site, this table could get big really quick. +You should make sure to create a shard with a low retention time for this +series (i.e. 7d) and add a continuous query to downsample the data into +hourly/daily averages. When doing that, you will obviously lose the detailed +information like `referer` and `referer_tld` but it might make sense to +create a second continuous query to count and downsample at least the +`referer_tld` values. + +NOTE: I don't know what impact this has on overall request time or how much +stress this would put on the InfluxDB server if you get thousands of requests. +It would probably wise to consider something like statsd to aggregate the +requests first and then send them to InfluxDB in bulk. + +### Tracking Users + +This app's `models.py` contains a `post_save` and a `post_delete` handler +which will detect when a user is created or deleted. + +It will create three measurements in your InfluxDB: + +The first one will be named `django_auth_user_create` and will have the +following fields: + +- `value`: 1 + +The second one will be named `django_auth_user_delete` and will have the +following fields: + +- `value`: 1 + +The third one will be named `django_auth_user_count` and will have the +following fields: + +- `value`: The total number of users in the database + +### Tracking User Logins + +This app's `models.py` contains a handler for the `user_logged_in` signal. + +The measurement created in your InfluxDB will be named +`django_auth_user_login` and will have the following fields: + +- `value`: 1 + +### Making Queries + +If you need to get data out of your InfluxDB instance, you can easily do it +like so:: + +from influxdb_metrics.utils import query +query('select \* from series.name', time_precision='s', chunked=False) + +The method declaration is the same as the one in `InfluxDBClient.query()`. +This wrapper simply instanciates a client based on your settings. + +## Contribute + +If you want to contribute to this project, please perform the following steps + +.. code-block:: bash + + # Fork this repository + # Clone your fork + mkvirtualenv -p python3.5 django-influxdb-metrics + make develop + + git co -b feature_branch master + # Implement your feature and tests + git add . && git commit + git push -u origin feature_branch + # Send us a pull request for your feature branch + +## Runing tests + +For running the tests [Docker](https://docs.docker.com/) and +[Docker compose](https://www.docker.com/products/docker-compose) is required. + +The test setup a Influxdb database for testing against real queries. + +In order to run the tests just run the command:: + + ./run_tests_with_docker.sh + + + + +%prep +%autosetup -n django-influxdb-metrics-1.5.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-django-influxdb-metrics -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 1.5.0-1 +- Package Spec generated @@ -0,0 +1 @@ +111dd1eade72d52210e6cbbd08e1c1b4 django-influxdb-metrics-1.5.0.tar.gz |