Home » Development » openerp-server.conf for OpenERP 7 explained

openerp-server.conf for OpenERP 7 explained

Here are the options that you can use in your openerp-server.conf file to tweak your OpenERP 7 installation.

In one of my previous posts Install OpenERP 7.0 from trunk I’ve written how to start your server with a start scrip just changing the ports and all other default settings. You can also start your server with a specified config file with -c command.

./server/openerp-server -c /path/to/openerp-server.conf

Here is the config file spitted  into parts for easy understanding.

Server startup config – Common options

# Admin password for creating, restoring and backing up databases
admin_passwd = admin

# default CSV separator for import and export
csv_internal_sep = ,

# to compress reports
reportgz = False

# disable loading demo data for modules to be installed (comma-separated, use "all" for all modules)
without_demo = False

# Use this for big data importation, if it crashes you will be able to continue at the current state. Provide a filename to store intermediate importation states.
import_partial = 

# file where the server pid will be stored
pidfile = None

# specify additional addons paths (separated by commas)
addons_path = /full/path/to/addons

# Comma-separated list of server-wide modules default=web
server_wide_modules = None

XML-RPC / HTTP – XML-RPC Configuration

# disable the XML-RPC protocol
xmlrpc = True

# Specify the TCP IP address for the XML-RPC protocol. The empty string binds to all interfaces.
xmlrpc_interface = 

# specify the TCP port for the XML-RPC protocol
xmlrpc_port = 8069

# Enable correct behavior when behind a reverse proxy
proxy_mode = False

XML-RPC / HTTPS – XML-RPC Secure Configuration

# disable the XML-RPC Secure protocol
xmlrpcs = True

# Specify the TCP IP address for the XML-RPC Secure protocol. The empty string binds to all interfaces.
xmlrpcs_interface = 

# specify the TCP port for the XML-RPC Secure protocol
xmlrpcs_port = 8071

# specify the certificate file for the SSL connection
secure_cert_file = server.cert

# specify the private key file for the SSL connection
secure_pkey_file = server.pkey

NET-RPC – NET-RPC Configuration

# enable the NETRPC protocol
netrpc = False

# specify the TCP IP address for the NETRPC protocol
netrpc_interface = 

# specify the TCP port for the NETRPC protocol
netrpc_port = 8070

WEB – Web interface Configuration

# Filter listed database REGEXP
dbfilter = .*

Static HTTP – Static HTTP service

# enable static HTTP service for serving plain HTML files
static_http_enable = False 

# specify the directory containing your static HTML files (e.g '/var/www/')
static_http_document_root = None

# specify the URL root prefix where you want web browsers to access your static HTML files (e.g '/')
static_http_url_prefix = None

Testing Group – Testing Configuration

# Launch a YML test file.
test_file = False

# If set, will save sample of all reports in this directory.
test_report_directory = False

# Enable YAML and unit tests.
test_enable = False

# Commit database changes performed by YAML or XML tests.
test_commit = False

Logging Group – Logging Configuration

# file where the server log will be stored
logfile = None

# do not rotate the logfile
logrotate = True

# Send the log to the syslog server
syslog = False

# setup a handler at LEVEL for a given PREFIX. An empty PREFIX indicates the root logger. This option can be repeated. Example: "openerp.orm:DEBUG" or "werkzeug:CRITICAL" (default: ":INFO")
log_handler = [':INFO']

# specify the level of the logging. Accepted values: info, debug_rpc, warn, test, critical, debug_sql, error, debug, debug_rpc_answer, notset
log_level = info

SMTP Group – SMTP Configuration

# specify the SMTP email address for sending email
email_from = False 

# specify the SMTP server for sending email
smtp_server = localhost 

# specify the SMTP port
smtp_port = 25 

# specify the SMTP server support SSL or not
smtp_ssl = False 

# specify the SMTP username for sending email
smtp_user = False

# specify the SMTP password for sending email
smtp_password = False

Database related options

# specify the database name
db_name = False

# specify the database user name
db_user = openerp

# specify the database password
db_password = False

# specify the pg executable path
pg_path = None

# specify the database host
db_host = False

# specify the database port
db_port = False

# specify the the maximum number of physical connections to posgresql
db_maxconn = 64

# specify a custom database template to create a new database
db_template = template1

Internationalisation options

translate_modules = ['all']

Security-related options

# disable the ability to return the list of databases
list_db = True

Advanced options – Advanced options

# enable debug mode
debug_mode = False

# specify reference timezone for the server (e.g. Europe/Brussels")
timezone = False

# Force a limit on the maximum number of records kept in the virtual osv_memory tables. The default is False, which means no count-based limit. 
osv_memory_count_limit = False 

# Force a limit on the maximum age of records kept in the virtual osv_memory tables. This is a decimal value expressed in hours, and the default is 1 hour.
osv_memory_age_limit = 1.0 

# Maximum number of threads processing concurrently cron jobs (default 2)
max_cron_threads = 2

# Use the unaccent function provided by the database when available.
unaccent = False

Multiprocessing options

# Specify the number of workers, 0 disable prefork mode.
workers = 0

# Maximum allowed virtual memory per worker, when reached the worker be reset after the current request (default 671088640 aka 640MB)
limit_memory_soft = 671088640

# Maximum allowed virtual memory per worker, when reached, any memory allocation will fail (default 805306368 aka 768MB)
limit_memory_hard = 805306368

# Maximum allowed CPU time per request (default 60)
limit_time_cpu = 60

# Maximum allowed Real time per request (default 120)
limit_time_real = 120

# Maximum number of request to be processed per worker (default 8192)
limit_request = 8192

There are few more options that you can find in this file

vi server/openerp/tools/config.py

You can download the config file with all comments from here

OpenERP: http://www.openerp.com

About Nikola Stojanoski

System Administrator and Developer. Giving back to the community by blogging about my problems, solutions and practical howto's.
  • Tom

    Hey Nikola, thanks for this post and the “Install OpenERP 7.0 from trunk” post!!
    I just installed the latest OpenERP (nightly) version on Ubuntu Server 12.04.1 LTS.
    Postgres and openerp server are running and staring up with the start of the ubuntu server.
    I can access the initial setup screen for OpenERP from another computer on the network but when I want to create a new database I get the following error message:

    OpenERP Server Error
    Client Traceback (most recent call last):
    File “/opt/openerp/server/openerp/addons/web/http.py”, line 195, in dispatch
    response["result"] = method(self, **self.params)
    File “/opt/openerp/server/openerp/addons/web/controllers/main.py”, line 718, in create
    params['create_admin_pwd'])
    File “/opt/openerp/server/openerp/addons/web/session.py”, line 31, in proxy_method
    result = self.session.send(self.service_name, method, *args)
    File “/opt/openerp/server/openerp/addons/web/session.py”, line 98, in send
    raise xmlrpclib.Fault(‘AccessDenied’, openerp.tools.ustr(e))

    Server Access denied.

    You can recreate the same error when you try to setup a new database from one of OpenERPs demo websites:
    https://demo2.openerp.com/#action=114

    Do you have any idea what’s going wrong here and point me in the right direction to be able to fix this??

    • Nikola Stojanoski

      The default Master password for creating databases is admin or whatever you put in admin_passwd parameter.

      Regards

      • Tom

        Thanks Nikola. Silly mistake on my side.

  • Pingback: Debugging OpenERP 7.0 | Ajay Malhotra

  • Raj

    Hi,

    I am using OpenERP 7 on centos 6.3 and I am getting the following error, when I try to change the password(From Users->Chnage password option) of users having administrative rights, I am getting the following error. Even I get this error the password gets changed. When I logout I have to login with new password. I have created multiple admin used and I get the same error when I try to change password.

    PS: I am able to change the password from the “User Preferences” option without any error.

    Any help on this will be appreciated.

    ===========================================

    Client Traceback (most recent call last): File “/tmp/openerp-7.0-20130310-002109/openerp/addons/web/http.py”, line 203, in dispatch response["result"] = method(self, *self.params) File “/tmp/openerp-7.0-20130310-002109/openerp/addons/web/controllers/main.py”, line 1074, in call_kw return self._call_kw(req, model, method, args, kwargs) File “/tmp/openerp-7.0-20130310-002109/openerp/addons/web/controllers/main.py”, line 1058, in _call_kw names = dict(req.session.model(model).name_get(args[0], *kwargs)) File “/tmp/openerp-7.0-20130310-002109/openerp/addons/web/session.py”, line 43, in proxy result = self.proxy.execute_kw(self.session._db, self.session._uid, self.session._password, self.model, method, args, kw) File “/tmp/openerp-7.0-20130310-002109/openerp/addons/web/session.py”, line 31, in proxy_method result = self.session.send(self.service_name, method, *args) File “/tmp/openerp-7.0-20130310-002109/openerp/addons/web/session.py”, line 98, in send raise xmlrpclib.Fault(‘AccessDenied’, openerp.tools.ustr(e))

    Server Access denied.

    =========================================

  • Varis

    Hi,
    I’m trying to set up https for OpenERP, but I can’t make it work… Https for the default site (@ :80) is ok but not for :8069. I’m aware that there are separate virtual hosts and that I have to configure them separately but I don’t know how. On apaches sites-available there is nothing related to OpenERP. I do the installation from the deb.
    Any suggestions?
    Does the process involve other settings, for example, modifications on postgres access permissions, or similar?

    • Nikola Stojanoski

      Hi,

      I have a tutorial how to enable https with nginx http://www.vionblog.com/openerp-reverse-proxy-using-nginx-server/

      Also don’t forget to enable proxy_mode = True in openerp-server.conf look in this post under: XML-RPC / HTTP – XML-RPC Configuration with that option you tell openerp to Enable correct behavior when behind a reverse proxy.

      If you have to use Apache search for apache reverse proxy configuration

      You don’t need to change anything on OpenERP just enable proxy_mode nginx will make a proxy call to port 8069 and proxy it back to you over https 443.

      Why you are making @:80 default https site? it should be @:443

      Use the post for nginx it redirects all http(@:80) requests to https(@:443) and calls OpenERP on port 8069

      Regards

  • Emilmil

    Hi Nik,

    Thanks for this nice post.
    I just want to know if it is possible to use OE7 in a LAN environment, let say:
    - I have a local network with 4 computers
    - openerp 7 is installed in 1 of them
    - how do I can access openerp using a browser?

    Regards

    • Nikola Stojanoski

      Sure, you can access using your browser with http://openerp_pc_ip:openerp_port/

      if your openerp PC IP is 192.168.1.50 and default OpenERP port is 8069 from other PC’s open http://192.168.1.50:8069/

      make sure your firewall is not blocking OpenERP port and make your OpenERP PC with static IP.

      Regards

      • Emilmil

        Hi Nik,
        I tried that but was unable to access the remote server through browser as describe.
        Firewall was disable but I didn’t set a static IP to the server, I’ll try that and be back with a comment.
        Regards,

  • Emilmil

    Hello,
    I am still unable to access the server from my LAN clients. I have set a static IP as you said and all firewall are disabled.
    Is there any other command or script to get this fixed?
    Any help is welcoming.
    Thanks

    Emile

    • Nikola Stojanoski

      OpenERP was build to be accessed from other computers.

      Are you able to access your OpenERP server from the local machine? if you are how do you access it?

      Regards

  • Emilmil

    I can access OpenERP localy using following both links: http://localhost:8069/ and http://192.168.88.89:8069/
    but still unable to access the said server from another client into the LAN

    • Nikola Stojanoski

      if your firewall is disabled you should be able to open it from any LAN computer using: http://192.168.88.89:8069/ without any problems

      Don’t look at your OpenERP setttings check your network configuration.

      Disable all Firewalls
      Try to ping 192.168.88.89
      Try to telnet 192.168.88.89 8069

      Regards

  • Emilmil

    Firewalls are off, pings OK and I’m gonna try telnet and come back

  • Emilmil

    Hi Nik,

    I try to telnet 192.168.88.89 8069 but it was unsuccessful. Can you help please?

    • Nikola Stojanoski

      Something is blocking your access to port 8069 i will say it again check your firewall settings or if you have installed OpenERP on windows check if there is some antivirus software with firewall features that could bock your access.

      Regards

  • Serge

    Hi, Nicola! Thanks for your help to us!

    I don’t find answer through searching, so my question is: Is running server (openerp) need access with write privileges to own config file — openerp.conf? When I was trying to create first time db from web-interface, I have errors window but db was created. May be, partially. I can see its tables in psql. In res_users I see admin/admin pair, but can not connect to new created base with this credentials nor with openerp/mypass. Has this pair hardcoded in sql create-db script? And if I can change some passwords in web-ui, how openerp-server handle it? In postgres only or it had to write some changes in it’s own config file? Have I change password to my postgresql role openerp to admin? For now I have a different password, however it can be found in openerp.conf. And for now I don’t see any new roles, except I have created earlier by hand. (with \du command in psql)

    • Nikola Stojanoski

      OpenERP stores everything in it’s database.
      You don’t need write access to openerp’s config file. admin_passwd that you set in your config file is used to create/restore/backup databases, this is the “Master password”

      Every other passwords are stored in the database so changing passwords doesn’t modifies the config file.

      The password for the user admin is chosen by you when you create the database.

      After you create your database every info os stored in your database.

      You can set logfile = /some/location/openerp.log and check to see if you have some errors when you create your database.

      Hope this helps.

      Regards,
      Nikola

  • http://www.wavepublicidad.com.ar Ramiro

    Hi Nikola, i install OpenERP 7.0 in a local virtual machine (Created with VirtualBox) running debian 6 64 bits and 1 GB of RAM memory. And all is perfect, very fast. (My Host Machine is AMD A8 Quad 3.0GHz).
    The problem starts when i try to run the same software in my VPS (hosted on ace-host.net).
    The VPS spects are 4 cores 2.0 GHz, 8 GB RAM, and debian 6 64 bits.
    The same database, the same postgresql and openerp version, and the same config on both machines. And in the VPS takes 4 times slower on every operation when i login into the openerp webclient.
    I know that my local hardware is better, but when i run other benchmarks, like PHP script, or mysql benchmarks the difference is very little. So, i dont know what is happening here.
    Do u have a performance tip ?
    The usage of my openerp instance is only for my company. We are 2 users, and we have a total of 250 partners.
    Another interesting thing is when i browse the webclient on my remote server the CPU is ony at 20%.
    Thanks for reading this.

    Ramiro

  • http://Openerp Aneesh

    The problem I am facing, is that should I do an “illegal” action – say for example, using another [Employee] user to create a leave for another [Employee] user – clicking on save will cause the Webclient to display loading message and stops responding. The terminal will have a message beginning with raise except_osv , and the log file has an access error.

    The user will have to either log in again, or clear the cache and enter OpenERP again.

    Is this normal? How to solve this issue .How I can show the error on user interface side.The user don’t know what happended on console.

  • James

    Hi. I can’t seem to get my backup to complete from the GUI. The process starts on the GUI but loads and loads and loads. The database is very small as I am testing backing up and restoring before deploying. Any ideas?

    Thanks.

  • Christopher

    Hi Nikola. I have a little trouble and I need your advice. I just clicked on the developer mode link on my openerp 7 and now I cannot access it on the http://localhost:8069. Only the http://localhost:8069/?debug is working. I need to restore back to the operation mode.

    Thanks

    • Nikola Stojanoski

      Hello,

      I’ve never had any problems with this. If you want to go out of developer mode juste remove ?debug from your url. Or maybe logout and close your browser to start a new session.

      Regards,
      Nikola

  • rikisphinx

    Hi Nikola,

    I am running an openerp v7 server but it is set behind a natted network. Everything works well and we can access it from within the network or via internet (vpn). What i can’t figure how to do is to change the url in the mails sent to our clients each time we have to send a quotation. i.e. the email sent to the clients is sent with our internal ip address instead of our public address that we could eventually map to the openerp server. Any idea of how i can achieve that?

    • nstojanoski

      What is the value of web.base.url in: Settings -> Technical -> Parameters -> System Parameters?

      • rikisphinx

        The value there is the local ip of the openerp server 192.168.1.x
        and that’s exactly hat i need to change permanently in a way that the emails that are sent are sent with my pubilc ip and the pubic open port. i.e. XX.10X.XX2.XXX:YYYY (routable ip:port)

      • rikisphinx

        The value of web.base.url is set to the local IP address of the server and that is exactly what i can’t find out where to change. For me, since all the quotes are sent to people outside of the company i wouldn’t mind to set this value to my external IP and port.

  • Tartan

    Hello Nikola, I am a newbie at openERP. I have a Synology NAS. I installed OE7 and already installed other modules (warehouse). I can access the NAS via LAN. That’s all great! Now I want to access via the web.(using a W-Lan connection)
    IS there special software to install on my pc? Or do I just go to a certain address? with any pc? Hope you have the answers. Thank you for your great blog!
    Tartan

    • nstojanoski

      You can access the web interface from any browser from anywhere you want, you don’t need to install any software. Just open your browser and open http://yourNASIP:8069/ from any PC in your LAN.
      if you want to access your OpenERP from outside your LAN you will need to do a port forward on your router.
      Regards

      • tartan

        Hi Nicola,
        I can access OpenERP from any pc in the LAN and WLAN of my officenetwork, but accessing from internet keeps saying: not found.
        I cannot change the IP address into static. The NAS gives an error. So i tried to fix this by portforwarding to port 80. Test not succesfull. Then tried to solve it by creating a DDNS. Succeeded, but web access ends in *not found*. Where do i go wrong? Thank you for your patience and input. Tartan

        • nstojanoski

          If you can access OpenERP from your LAN than it’s working. It’s some kind of networking problem. you need to forward to the port you are accessing OpenERP from your LAN.
          Also do you have public IP on your router that you are doing the port forward?

          • tartan

            Hi Nicola, getting a bit desperate here…cannot access the nas running openerp from internet. My set up is as follows: a synology nas connected with wireless router tp-link. The router is connected to adsl modem.
            As i said openerp works fine as long as i approach 192.168.0.101:8069 being on the wireless router (office network) i have set up portforwarding first from tplink, ip not found. Then from adsl modem, ip not found. The nas has upnp/ ezinternet to set portforwarding. But i get error.
            Which one should have the portforwarding, router, modem or nas?
            What do you mean by public ip? How can i check that?
            I appreciate your help, greatly! Thanks. Tartan

          • nstojanoski

            on your tp-link wireless router on your first status page scroll to WAN and see what is the value of your IP Address:
            If it’s 192.168.X.X or 10.X.X.X or 172.16.X.X it means that you have double NAT and your adsl modem is making the connection and your port forward should be created on that device.

            If this is the case you need to port forward from your adsl modem to your tp-link router and than from your tp-link router to your synology NAS, or you need to set your adsl modem in bridge mode and create the connection on your tp-link router.

            Regards,
            Nikola

  • Shaikh Mohsin Khan

    Hi Nik,
    I opened openerp-server.conf file and edited according to your tutorial but i m not able to save my file its displayed error like “Access denied”.

    Why i am doing this because i am not able to run openerp on browser.

    When i check its services its automatically stop but i tried to start after 1 min its again stop so i don’t know exactly how to resolve this problem.

    Your help will highly appreciated
    Thanks in Advance.

    • nstojanoski

      access denied on what? does your db_user have access to postgresql?

  • Aman

    Hi,

    As everybody else asking questions, I am also new to OpenERP. I installed OpenERP using the following link…….. http://www.theopensourcerer.com/2012/12/how-to-install-openerp-7-0-on-ubuntu-12-04-lts/

    Now, when I create a user and send him/her an invitation mail the following link gets generated

    An invitation email containing the following subscription link has been sent:
    http://localhost:8069?db=openerp#action=login&token=N4syzkee6gwZd2laxHQN&type=reset

    My question is..

    How can I change localhost to the ip address in the generated link?

    • nstojanoski

      web.base.url in: Settings -> Technical -> Parameters -> System Parameters

      Change the value to your host.

      Regards,

  • Oz

    Hi,

    I am using OpenERP 7 in ubuntu 12.04 lts

    I have create a database and make some changes in the settings of my company.
    when disconnected, i no longer can connect on my company.
    i’m redirected to the screen for creating a new database

    i need help.

    • nstojanoski

      Check under which user you created your database.

      If OpenERP doesn’t see any database it will show you the screen to create new database, if you have only one database you will be able to use that database, and if you have multiple databases it will show jump menu in the top right corner where you can choose which database to use.

      If you don’t specify db_user OpenERP will use the username that you are starting the server. If you later have changed the config or copied mine from this post and you ware not using openerp as username for your OpenERP instance, you need to change db_user = your_username

      I hope this will gave you good directions for debuging.

      Regards,
      Nikola

  • Nikola

    Hi,

    Thank you for the very informative post. I’m trying to experiment with xmlrpc API, so as the docs are realy scarce about the subject, the log_level = debug_rpc comes in handy. However, I don’t see the full debugging info in my logs. The problem is that some of the content is left out with ‘…’ instead, like this:

    2014-02-05 22:42:23,058 13740 DEBUG test_db openerp.netsvc.rpc.request: object.execute_kw time:0.087s mem: 117892k -> 117892k (diff: 0k)(‘test_db’, 1, ‘*’, ‘res.partner’, ‘name_create’, (…,), {…})

    Is there any way I can see full debug info? Thanks

  • http://www.cloudstaff.com/ Hoyt Velasquez

    A very great article indeed. The information are really helpful. Thanks for sharing.

  • Bob

    can we install different copies (including DB & website) of the system on each company’s branch, then the system version at head Quarter connect to all branches to get them data and report?

    • nstojanoski

      You need to kook ad multi-company feature in OpenERP, you can have users look at their own companies and head quaters, but this will create separate accounting for the branch offices.

      Better way is to restrict users to be able to see data only from their own branch office it’s done under Settings -> Technical -> Security

      Regards

  • darmawan Fatriananda

    Hello, please suggest me the best openerp configuration or minimum server spesification.
    I’m using openerp 7 and already deployed to server ( OS : Centos, Physical Memory 12GB).
    Openerp application used for 13000 concurrent users. then openerp server used all of physical memory server (+11GB).
    Its normal when openerp use 11GB Physical Memory ?
    or any suggestion best configuration or other optimization ?