Skip to Content
Menu
This question has been flagged
4 Replies
9760 Views

I have downloaded an addon. Also added the path to its folder in odoo.conf​ . The first time I did it I had no problems. But after turning down my computer I started the server again and it didn't work. (idk what happens with the docker compose for my odoo when I turn out computer, does it make docker-compose stop or down?) 

I am doing: `docker exec -it bash` 

And go to /var/log/odoo but found nothing related to this directory.


I am using ubuntu 20.04 and Odoo running in docker-

Avatar
Discard
Author

I really appreciate your answers.

@Jort When I put docker logs --tail 50 my-container it isnt showing anything. 


@Alexander It seems that I don't have odoo-server.log on my docker.

Odoo's logging is managed by Python's standard library module logging. By default, log messages are written to stderr. So is Odoo configured to output log messages to a logfile?

You can run Odoo with either the --logfile option or provide the logfile setting in the configuration file, so log messages will be written to the specified file. For example:

[options]
; ...
logfile = /var/log/odoo/odoo-server.log
; ...

This setting causes Odoo to write log messages to /var/log/odoo/odoo-server.log. Remember that, due to the ephemeral nature of Docker containers, if you're running Odoo inside a Docker container and you want the logs to persist across restarts of the container, you should ensure that /var/log/odoo is a Docker volume or bind mount (see https://docs.docker.com/storage/).

Author

Thank you Jort. Based on the path you gave me I looked for it in the odoo.conf and found : `logfile =etc/odoo/odoo-server.log` also, there is a file in my local computer that has the same values so there is no problem about persistance.

Thank you a lot, your blog helped me to understand too.

Best Answer

If Odoo is not configured to save the logs you can see the logs for your Odoo container with the following command: docker logs --tail 50 my-container​, where my-container​ is the id or name of the container. This command shows the last 50 lines of the log. If you don't know how to find the container name or id, you can use docker ps.​ This command will also rule out if a container is running or not. If the docker​ command doesn't work, try above with sudo​.

How did you configure your docker container? By default the data doesn’t persist when that container no longer exists. Docker has two options for containers to store files on the host machine, so that the files are persisted even after the container stops: volumes, and bind mounts.

For more information about setting up docker and odoo you can also checkout my blog post.

I hope this helps.

Avatar
Discard
Best Answer

Guess little late for this question but I hope it helps others, docker container logs are located in "/var/lib/docker/containers" in JSON log format. 

use "docker ps" on the host machine and check the relevant matching container id. 
so there 2 methods - 

1)  docker container logs 3ae3a5d80171  --follow   ( 'tail -f' like output ) 
   or 
   docker container logs  -n 50 3ae3a5d80171     ( last 50 ) 


2) on the host machine -- 
   cd /var/lib/docker/containers/3ae3a5d80171* 
   tail -f 3ae3a5d80171*.log


Avatar
Discard
Best Answer

hi, you can use 'tail -f /var/log/odoo/odoo-server.log' let me know if it works!! :D

Avatar
Discard

did you notice the word DOCKER !!!! ??

Best Answer

Hi,

You can try using 'tail -f /var/log/odoo/odoo-server.log' to check your logs. If you don't get the log file in that directory, try 'tail -f /var/log/odoo-server.log'.

Either of this should work. 

Regards

Avatar
Discard

did you notice the word DOCKER

Related Posts Replies Views Activity
1
Dec 23
2080
0
Sep 23
2374
1
Oct 24
3094
2
Dec 22
3117
5
Nov 19
4718