Use lazy % formatting in logging functions
158 model_cls = self.model_classes.get(model)
159 post_delete.send(model_cls, using=self, instance=self.pre_delete_django_instance)
160 except Exception as e:
161 logger.warning('[!] on_model_post_delete signal failed: {}'.format(str(e)))162
163 def model_key(self, model):
164 return model._meta.db_table
Use lazy % formatting in logging functions
151 pre_delete.send(model_cls, using=self, instance=django_instance)
152 self.pre_delete_django_instance = django_instance
153 except Exception as e:
154 logger.warning('[!] on_model_pre_delete signal failed: {}'.format(str(e)))155
156 def on_model_post_delete(self, model, instance):
157 try:
Use lazy % formatting in logging functions
143 model_cls, django_instance = self.get_django_instance(model, instance)
144 post_save.send(model_cls, raw=True, using=self, instance=django_instance, created=False, update_fields=[])
145 except Exception as e:
146 logger.warning('[!] on_model_post_update signal failed: {}'.format(str(e)))147
148 def on_model_pre_delete(self, model, instance):
149 try:
Use lazy % formatting in logging functions
136 model_cls, django_instance = self.get_django_instance(model, instance)
137 pre_save.send(model_cls, raw=True, using=self, instance=django_instance, update_fields=[])
138 except Exception as e:
139 logger.warning('[!] on_model_pre_update signal failed: {}'.format(str(e)))140
141 def on_model_post_update(self, model, instance):
142 try:
Use lazy % formatting in logging functions
129 model_cls, django_instance = self.get_django_instance(model, instance)
130 post_save.send(model_cls, raw=True, using=self, instance=django_instance, created=True, update_fields=[])
131 except Exception as e:
132 logger.warning('[!] on_model_post_create signal failed: {}'.format(str(e)))133
134 def on_model_pre_update(self, model, instance):
135 try:
Use lazy % formatting in logging functions
122 model_cls, django_instance = self.get_django_instance(model, instance)
123 pre_save.send(model_cls, raw=True, using=self, instance=django_instance, update_fields=[])
124 except Exception as e:
125 logger.warning('[!] on_model_pre_create signal failed: {}'.format(str(e)))126
127 def on_model_post_create(self, model, instance):
128 try:
Description
Formatting the message manually before passing it to a logging
call does unnecessary work if logging in disabled. Consider using the logging
module's built-in formatting features to avoid that.
Bad practice
import logging, inspect
logging.basicConfig(level=logging.INFO)
logging.debug("Entered function {}".format(inspect.stack[0][3]))
Recommended
import logging, inspect
logging.basicConfig(level=logging.INFO)
logging.debug("Entered function %s", inspect.stack[0][3])