MobileBlur

Hex Artifact Content
Login

Artifact ac55438bc13275eb6cf4d5d0fbeefa7970d9a3ac:


0000: 5b 6c 6f 67 67 65 72 73 5d 0a 6b 65 79 73 3d 72  [loggers].keys=r
0010: 6f 6f 74 2c 72 6f 63 6b 65 74 2c 6d 61 72 6b 64  oot,rocket,markd
0020: 6f 77 6e 2c 77 65 62 32 70 79 2c 72 65 77 72 69  own,web2py,rewri
0030: 74 65 2c 61 70 70 2c 77 65 6c 63 6f 6d 65 0a 0a  te,app,welcome..
0040: 23 20 74 68 65 20 64 65 66 61 75 6c 74 20 63 6f  # the default co
0050: 6e 66 69 67 75 72 61 74 69 6f 6e 20 69 73 20 63  nfiguration is c
0060: 6f 6e 73 6f 6c 65 2d 62 61 73 65 64 20 28 73 74  onsole-based (st
0070: 64 6f 75 74 29 20 66 6f 72 20 62 61 63 6b 77 61  dout) for backwa
0080: 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79  rd compatibility
0090: 0a 23 0a 23 20 6e 6f 74 65 20 74 68 61 74 20 66  .#.# note that f
00a0: 69 6c 65 2d 62 61 73 65 64 20 68 61 6e 64 6c 65  ile-based handle
00b0: 72 73 20 61 72 65 20 74 68 72 65 61 64 2d 73 61  rs are thread-sa
00c0: 66 65 20 62 75 74 20 6e 6f 74 20 6d 70 2d 73 61  fe but not mp-sa
00d0: 66 65 3b 0a 23 20 66 6f 72 20 6d 70 2d 73 61 66  fe;.# for mp-saf
00e0: 65 20 6c 6f 67 67 69 6e 67 2c 20 63 6f 6e 66 69  e logging, confi
00f0: 67 75 72 65 20 74 68 65 20 61 70 70 72 6f 70 72  gure the appropr
0100: 69 61 74 65 20 73 79 73 6c 6f 67 20 68 61 6e 64  iate syslog hand
0110: 6c 65 72 0a 0a 5b 68 61 6e 64 6c 65 72 73 5d 0a  ler..[handlers].
0120: 6b 65 79 73 3d 63 6f 6e 73 6f 6c 65 48 61 6e 64  keys=consoleHand
0130: 6c 65 72 0a 23 6b 65 79 73 3d 63 6f 6e 73 6f 6c  ler.#keys=consol
0140: 65 48 61 6e 64 6c 65 72 2c 72 6f 74 61 74 69 6e  eHandler,rotatin
0150: 67 46 69 6c 65 48 61 6e 64 6c 65 72 0a 23 6b 65  gFileHandler.#ke
0160: 79 73 3d 6f 73 78 53 79 73 4c 6f 67 48 61 6e 64  ys=osxSysLogHand
0170: 6c 65 72 0a 0a 5b 66 6f 72 6d 61 74 74 65 72 73  ler..[formatters
0180: 5d 0a 6b 65 79 73 3d 73 69 6d 70 6c 65 46 6f 72  ].keys=simpleFor
0190: 6d 61 74 74 65 72 0a 0a 5b 6c 6f 67 67 65 72 5f  matter..[logger_
01a0: 72 6f 6f 74 5d 0a 6c 65 76 65 6c 3d 57 41 52 4e  root].level=WARN
01b0: 49 4e 47 0a 68 61 6e 64 6c 65 72 73 3d 63 6f 6e  ING.handlers=con
01c0: 73 6f 6c 65 48 61 6e 64 6c 65 72 0a 0a 5b 6c 6f  soleHandler..[lo
01d0: 67 67 65 72 5f 77 65 62 32 70 79 5d 0a 6c 65 76  gger_web2py].lev
01e0: 65 6c 3d 57 41 52 4e 49 4e 47 0a 68 61 6e 64 6c  el=WARNING.handl
01f0: 65 72 73 3d 63 6f 6e 73 6f 6c 65 48 61 6e 64 6c  ers=consoleHandl
0200: 65 72 0a 71 75 61 6c 6e 61 6d 65 3d 77 65 62 32  er.qualname=web2
0210: 70 79 0a 70 72 6f 70 61 67 61 74 65 3d 30 0a 0a  py.propagate=0..
0220: 5b 6c 6f 67 67 65 72 5f 72 65 77 72 69 74 65 5d  [logger_rewrite]
0230: 0a 6c 65 76 65 6c 3d 57 41 52 4e 49 4e 47 0a 71  .level=WARNING.q
0240: 75 61 6c 6e 61 6d 65 3d 77 65 62 32 70 79 2e 72  ualname=web2py.r
0250: 65 77 72 69 74 65 0a 68 61 6e 64 6c 65 72 73 3d  ewrite.handlers=
0260: 63 6f 6e 73 6f 6c 65 48 61 6e 64 6c 65 72 0a 70  consoleHandler.p
0270: 72 6f 70 61 67 61 74 65 3d 30 0a 0a 23 20 67 65  ropagate=0..# ge
0280: 6e 65 72 69 63 20 61 70 70 20 68 61 6e 64 6c 65  neric app handle
0290: 72 0a 5b 6c 6f 67 67 65 72 5f 61 70 70 5d 0a 6c  r.[logger_app].l
02a0: 65 76 65 6c 3d 57 41 52 4e 49 4e 47 0a 71 75 61  evel=WARNING.qua
02b0: 6c 6e 61 6d 65 3d 77 65 62 32 70 79 2e 61 70 70  lname=web2py.app
02c0: 0a 68 61 6e 64 6c 65 72 73 3d 63 6f 6e 73 6f 6c  .handlers=consol
02d0: 65 48 61 6e 64 6c 65 72 0a 70 72 6f 70 61 67 61  eHandler.propaga
02e0: 74 65 3d 30 0a 0a 23 20 77 65 6c 63 6f 6d 65 20  te=0..# welcome 
02f0: 61 70 70 20 68 61 6e 64 6c 65 72 0a 5b 6c 6f 67  app handler.[log
0300: 67 65 72 5f 77 65 6c 63 6f 6d 65 5d 0a 6c 65 76  ger_welcome].lev
0310: 65 6c 3d 57 41 52 4e 49 4e 47 0a 71 75 61 6c 6e  el=WARNING.qualn
0320: 61 6d 65 3d 77 65 62 32 70 79 2e 61 70 70 2e 77  ame=web2py.app.w
0330: 65 6c 63 6f 6d 65 0a 68 61 6e 64 6c 65 72 73 3d  elcome.handlers=
0340: 63 6f 6e 73 6f 6c 65 48 61 6e 64 6c 65 72 0a 70  consoleHandler.p
0350: 72 6f 70 61 67 61 74 65 3d 30 0a 0a 23 20 6c 6f  ropagate=0..# lo
0360: 67 67 65 72 73 20 66 6f 72 20 6c 65 67 61 63 79  ggers for legacy
0370: 20 67 65 74 4c 6f 67 67 65 72 20 63 61 6c 6c 73   getLogger calls
0380: 3a 20 52 6f 63 6b 65 74 20 61 6e 64 20 6d 61 72  : Rocket and mar
0390: 6b 64 6f 77 6e 0a 5b 6c 6f 67 67 65 72 5f 72 6f  kdown.[logger_ro
03a0: 63 6b 65 74 5d 0a 6c 65 76 65 6c 3d 57 41 52 4e  cket].level=WARN
03b0: 49 4e 47 0a 68 61 6e 64 6c 65 72 73 3d 63 6f 6e  ING.handlers=con
03c0: 73 6f 6c 65 48 61 6e 64 6c 65 72 0a 71 75 61 6c  soleHandler.qual
03d0: 6e 61 6d 65 3d 52 6f 63 6b 65 74 0a 70 72 6f 70  name=Rocket.prop
03e0: 61 67 61 74 65 3d 30 0a 0a 5b 6c 6f 67 67 65 72  agate=0..[logger
03f0: 5f 6d 61 72 6b 64 6f 77 6e 5d 0a 6c 65 76 65 6c  _markdown].level
0400: 3d 57 41 52 4e 49 4e 47 0a 68 61 6e 64 6c 65 72  =WARNING.handler
0410: 73 3d 63 6f 6e 73 6f 6c 65 48 61 6e 64 6c 65 72  s=consoleHandler
0420: 0a 71 75 61 6c 6e 61 6d 65 3d 6d 61 72 6b 64 6f  .qualname=markdo
0430: 77 6e 0a 70 72 6f 70 61 67 61 74 65 3d 30 0a 0a  wn.propagate=0..
0440: 5b 68 61 6e 64 6c 65 72 5f 63 6f 6e 73 6f 6c 65  [handler_console
0450: 48 61 6e 64 6c 65 72 5d 0a 63 6c 61 73 73 3d 53  Handler].class=S
0460: 74 72 65 61 6d 48 61 6e 64 6c 65 72 0a 6c 65 76  treamHandler.lev
0470: 65 6c 3d 57 41 52 4e 49 4e 47 0a 66 6f 72 6d 61  el=WARNING.forma
0480: 74 74 65 72 3d 73 69 6d 70 6c 65 46 6f 72 6d 61  tter=simpleForma
0490: 74 74 65 72 0a 61 72 67 73 3d 28 73 79 73 2e 73  tter.args=(sys.s
04a0: 74 64 6f 75 74 2c 29 0a 0a 23 20 52 6f 74 61 74  tdout,)..# Rotat
04b0: 69 6e 67 20 66 69 6c 65 20 68 61 6e 64 6c 65 72  ing file handler
04c0: 0a 23 20 20 20 6d 6b 64 69 72 20 6c 6f 67 73 20  .#   mkdir logs 
04d0: 69 6e 20 74 68 65 20 77 65 62 32 70 79 20 62 61  in the web2py ba
04e0: 73 65 20 64 69 72 65 63 74 6f 72 79 20 69 66 20  se directory if 
04f0: 6e 6f 74 20 61 6c 72 65 61 64 79 20 70 72 65 73  not already pres
0500: 65 6e 74 0a 23 20 20 20 61 72 67 73 3a 20 28 66  ent.#   args: (f
0510: 69 6c 65 6e 61 6d 65 5b 2c 20 6d 6f 64 65 5b 2c  ilename[, mode[,
0520: 20 6d 61 78 42 79 74 65 73 5b 2c 20 62 61 63 6b   maxBytes[, back
0530: 75 70 43 6f 75 6e 74 5b 2c 20 65 6e 63 6f 64 69  upCount[, encodi
0540: 6e 67 5b 2c 20 64 65 6c 61 79 5d 5d 5d 5d 5d 29  ng[, delay]]]]])
0550: 0a 23 0a 5b 68 61 6e 64 6c 65 72 5f 72 6f 74 61  .#.[handler_rota
0560: 74 69 6e 67 46 69 6c 65 48 61 6e 64 6c 65 72 5d  tingFileHandler]
0570: 0a 63 6c 61 73 73 3d 68 61 6e 64 6c 65 72 73 2e  .class=handlers.
0580: 52 6f 74 61 74 69 6e 67 46 69 6c 65 48 61 6e 64  RotatingFileHand
0590: 6c 65 72 0a 6c 65 76 65 6c 3d 49 4e 46 4f 0a 66  ler.level=INFO.f
05a0: 6f 72 6d 61 74 74 65 72 3d 73 69 6d 70 6c 65 46  ormatter=simpleF
05b0: 6f 72 6d 61 74 74 65 72 0a 61 72 67 73 3d 28 22  ormatter.args=("
05c0: 6c 6f 67 73 2f 77 65 62 32 70 79 2e 6c 6f 67 22  logs/web2py.log"
05d0: 2c 20 22 61 22 2c 20 31 30 30 30 30 30 30 2c 20  , "a", 1000000, 
05e0: 35 29 0a 0a 5b 68 61 6e 64 6c 65 72 5f 6f 73 78  5)..[handler_osx
05f0: 53 79 73 4c 6f 67 48 61 6e 64 6c 65 72 5d 0a 63  SysLogHandler].c
0600: 6c 61 73 73 3d 68 61 6e 64 6c 65 72 73 2e 53 79  lass=handlers.Sy
0610: 73 4c 6f 67 48 61 6e 64 6c 65 72 0a 6c 65 76 65  sLogHandler.leve
0620: 6c 3d 57 41 52 4e 49 4e 47 0a 66 6f 72 6d 61 74  l=WARNING.format
0630: 74 65 72 3d 73 69 6d 70 6c 65 46 6f 72 6d 61 74  ter=simpleFormat
0640: 74 65 72 0a 61 72 67 73 3d 28 22 2f 76 61 72 2f  ter.args=("/var/
0650: 72 75 6e 2f 73 79 73 6c 6f 67 22 2c 20 68 61 6e  run/syslog", han
0660: 64 6c 65 72 73 2e 53 79 73 4c 6f 67 48 61 6e 64  dlers.SysLogHand
0670: 6c 65 72 2e 4c 4f 47 5f 44 41 45 4d 4f 4e 29 0a  ler.LOG_DAEMON).
0680: 0a 5b 68 61 6e 64 6c 65 72 5f 6c 69 6e 75 78 53  .[handler_linuxS
0690: 79 73 4c 6f 67 48 61 6e 64 6c 65 72 5d 0a 63 6c  ysLogHandler].cl
06a0: 61 73 73 3d 68 61 6e 64 6c 65 72 73 2e 53 79 73  ass=handlers.Sys
06b0: 4c 6f 67 48 61 6e 64 6c 65 72 0a 6c 65 76 65 6c  LogHandler.level
06c0: 3d 57 41 52 4e 49 4e 47 0a 66 6f 72 6d 61 74 74  =WARNING.formatt
06d0: 65 72 3d 73 69 6d 70 6c 65 46 6f 72 6d 61 74 74  er=simpleFormatt
06e0: 65 72 0a 61 72 67 73 3d 28 22 2f 64 65 76 2f 6c  er.args=("/dev/l
06f0: 6f 67 22 2c 20 68 61 6e 64 6c 65 72 73 2e 53 79  og", handlers.Sy
0700: 73 4c 6f 67 48 61 6e 64 6c 65 72 2e 4c 4f 47 5f  sLogHandler.LOG_
0710: 44 41 45 4d 4f 4e 29 0a 0a 5b 68 61 6e 64 6c 65  DAEMON)..[handle
0720: 72 5f 72 65 6d 6f 74 65 53 79 73 4c 6f 67 48 61  r_remoteSysLogHa
0730: 6e 64 6c 65 72 5d 0a 63 6c 61 73 73 3d 68 61 6e  ndler].class=han
0740: 64 6c 65 72 73 2e 53 79 73 4c 6f 67 48 61 6e 64  dlers.SysLogHand
0750: 6c 65 72 0a 6c 65 76 65 6c 3d 57 41 52 4e 49 4e  ler.level=WARNIN
0760: 47 0a 66 6f 72 6d 61 74 74 65 72 3d 73 69 6d 70  G.formatter=simp
0770: 6c 65 46 6f 72 6d 61 74 74 65 72 0a 61 72 67 73  leFormatter.args
0780: 3d 28 28 27 73 79 73 6c 6f 67 68 6f 73 74 2e 64  =(('sysloghost.d
0790: 6f 6d 61 69 6e 2e 63 6f 6d 27 2c 20 68 61 6e 64  omain.com', hand
07a0: 6c 65 72 73 2e 53 59 53 4c 4f 47 5f 55 44 50 5f  lers.SYSLOG_UDP_
07b0: 50 4f 52 54 29 2c 20 68 61 6e 64 6c 65 72 73 2e  PORT), handlers.
07c0: 53 79 73 4c 6f 67 48 61 6e 64 6c 65 72 2e 4c 4f  SysLogHandler.LO
07d0: 47 5f 44 41 45 4d 4f 4e 29 0a 0a 5b 66 6f 72 6d  G_DAEMON)..[form
07e0: 61 74 74 65 72 5f 73 69 6d 70 6c 65 46 6f 72 6d  atter_simpleForm
07f0: 61 74 74 65 72 5d 0a 66 6f 72 6d 61 74 3d 25 28  atter].format=%(
0800: 61 73 63 74 69 6d 65 29 73 20 2d 20 25 28 6e 61  asctime)s - %(na
0810: 6d 65 29 73 20 2d 20 25 28 6c 65 76 65 6c 6e 61  me)s - %(levelna
0820: 6d 65 29 73 20 2d 20 25 28 6d 65 73 73 61 67 65  me)s - %(message
0830: 29 73 0a 64 61 74 65 66 6d 74 3d 0a              )s.datefmt=.