Strange, because I remember it working for me. I had something like this in my docker-compose file:
volumes:
- './log4j2.properties:/usr/share/opensearch/config/log4j2.properties'
I made it log in JSON with this log4j config:
appender.console.type = Console
appender.console.name = console
appender.console.layout.type = OpenSearchJsonLayout
appender.console.layout.type_name = json_logger
rootLogger.level = info
rootLogger.appenderRef.console.ref = console
But I didn’t try making it log to a file. How does your log4j config look like?