diff --git a/docs/release-notes/version-3.0.md b/docs/release-notes/version-3.0.md index 0c4674797..20e438c7a 100644 --- a/docs/release-notes/version-3.0.md +++ b/docs/release-notes/version-3.0.md @@ -6,6 +6,7 @@ * The default CSV export format for all objects now includes all available data. Additionally, the CSV headers now use human-friendly titles rather than the raw field names. * Support for queryset caching configuration (`caching_config`) has been removed from the plugins API (see [#6639](https://github.com/netbox-community/netbox/issues/6639)). +* The `cacheops_*` metrics have been removed from the Prometheus exporter (see [#6639](https://github.com/netbox-community/netbox/issues/6639)). ### New Features diff --git a/netbox/dcim/signals.py b/netbox/dcim/signals.py index 33a868f2c..9fc68ee70 100644 --- a/netbox/dcim/signals.py +++ b/netbox/dcim/signals.py @@ -1,6 +1,5 @@ import logging -from cacheops import invalidate_obj from django.contrib.contenttypes.models import ContentType from django.db.models.signals import post_save, post_delete, pre_delete from django.db import transaction @@ -33,7 +32,6 @@ def rebuild_paths(obj): for cp in cable_paths: cp.delete() if cp.origin: - invalidate_obj(cp.origin) create_cablepath(cp.origin) diff --git a/netbox/extras/management/commands/renaturalize.py b/netbox/extras/management/commands/renaturalize.py index 8ad51966a..d31b4ae02 100644 --- a/netbox/extras/management/commands/renaturalize.py +++ b/netbox/extras/management/commands/renaturalize.py @@ -1,4 +1,3 @@ -from cacheops import invalidate_model from django.apps import apps from django.core.management.base import BaseCommand, CommandError @@ -108,8 +107,5 @@ class Command(BaseCommand): elif options['verbosity']: self.stdout.write(self.style.SUCCESS(str(count))) - # Invalidate cached queries - invalidate_model(model) - if options['verbosity']: self.stdout.write(self.style.SUCCESS("Done.")) diff --git a/netbox/extras/signals.py b/netbox/extras/signals.py index 5fd68cfff..2b2fc774c 100644 --- a/netbox/extras/signals.py +++ b/netbox/extras/signals.py @@ -1,4 +1,3 @@ -from cacheops.signals import cache_invalidated, cache_read from django.conf import settings from django.contrib.contenttypes.models import ContentType from django.db.models.signals import m2m_changed, post_save, pre_delete @@ -138,27 +137,3 @@ def run_custom_validators(sender, instance, **kwargs): validators = settings.CUSTOM_VALIDATORS.get(model_name, []) for validator in validators: validator(instance) - - -# -# Caching -# - -cacheops_cache_hit = Counter('cacheops_cache_hit', 'Number of cache hits') -cacheops_cache_miss = Counter('cacheops_cache_miss', 'Number of cache misses') -cacheops_cache_invalidated = Counter('cacheops_cache_invalidated', 'Number of cache invalidations') - - -def cache_read_collector(sender, func, hit, **kwargs): - if hit: - cacheops_cache_hit.inc() - else: - cacheops_cache_miss.inc() - - -def cache_invalidated_collector(sender, obj_dict, **kwargs): - cacheops_cache_invalidated.inc() - - -cache_read.connect(cache_read_collector) -cache_invalidated.connect(cache_invalidated_collector)