Adjust heartbeat arg and more formatting

* fixed the call to cluster_node_heartbeat missing binder
* formatting/linter fixes
This commit is contained in:
thedoubl3j
2026-01-20 15:21:23 -05:00
parent d75fcc13f6
commit 381c7fdc5d
3 changed files with 19 additions and 7 deletions

View File

@@ -6,19 +6,14 @@ import logging
import signal import signal
import sys import sys
import time import time
from queue import Empty as QueueEmpty
from django import db from django import db
from awx.main.utils.redis import get_redis_client from awx.main.utils.redis import get_redis_client
from awx.main.dispatch.pool import WorkerPool from awx.main.dispatch.pool import WorkerPool
from awx.main.utils.db import set_connection_name
if 'run_callback_receiver' in sys.argv: logger = logging.getLogger('awx.main.commands.run_callback_receiver')
logger = logging.getLogger('awx.main.commands.run_callback_receiver')
else:
logger = logging.getLogger('awx.main.dispatch')
def signame(sig): def signame(sig):

View File

@@ -5,6 +5,8 @@ import logging.config
import yaml import yaml
from django.core.management.base import BaseCommand, CommandError from django.core.management.base import BaseCommand, CommandError
from django.core.cache import cache as django_cache
from django.db import connection
from dispatcherd.factories import get_control_from_settings from dispatcherd.factories import get_control_from_settings
from dispatcherd import run_service from dispatcherd import run_service
@@ -71,3 +73,18 @@ class Command(BaseCommand):
dispatcher_setup(get_dispatcherd_config(for_service=True)) dispatcher_setup(get_dispatcherd_config(for_service=True))
run_service() run_service()
def configure_dispatcher_logging(self):
# Apply special log rule for the parent process
special_logging = copy.deepcopy(settings.LOGGING)
for handler_name, handler_config in special_logging.get('handlers', {}).items():
filters = handler_config.get('filters', [])
if 'dynamic_level_filter' in filters:
handler_config['filters'] = [flt for flt in filters if flt != 'dynamic_level_filter']
logger.info(f'Dispatcherd main process replaced log level filter for {handler_name} handler')
# Apply the custom logging level here, before the asyncio code starts
special_logging.setdefault('loggers', {}).setdefault('dispatcherd', {})
special_logging['loggers']['dispatcherd']['level'] = settings.LOG_AGGREGATOR_LEVEL
logging.config.dictConfig(special_logging)

View File

@@ -50,7 +50,7 @@ def test_job_capacity_and_with_inactive_node():
i.save() i.save()
with override_settings(CLUSTER_HOST_ID=i.hostname): with override_settings(CLUSTER_HOST_ID=i.hostname):
with mock.patch.object(redis.client.Redis, 'ping', lambda self: True): with mock.patch.object(redis.client.Redis, 'ping', lambda self: True):
cluster_node_heartbeat() cluster_node_heartbeat(None)
i = Instance.objects.get(id=i.id) i = Instance.objects.get(id=i.id)
assert i.capacity == 0 assert i.capacity == 0