Como OP señala el orden log_format es realmente muy importante, en el caso de log_formats personalizados, si coloca en el mismo directorio ambos tipos de archivos, algunos archivos con log_formats, algunos archivos con bloques de servidores que hacen uso de esos log_formats, el resultado será un Configuración altamente irrepetible.
En el trabajo, cuando movimos nuestra granja nginx hecha a mano a la marioneta, comenzamos a ver algunas instalaciones nginx desde cero para fallar en un hardware / configuración idéntico, después de muchas situaciones extrañas de depuración como tener dos / etc / nginx / * (- r) con un md5match y el mismo binario produciendo resultados diferentes (error de formato de registro inválido en uno y trabajando en otro), aprendimos de la manera difícil que orden es realmente muy importante para algunas directivas como log_format.
Solucionamos el problema simplemente moviendo la generación de bloques de servidor fuera de conf.d / * a otra carpeta incluida después de conf.d / *.