157. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 10/2/2017 1:40:11 PM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

157.1 Files compared

# Location File Last Modified
1 chef-repo.zip\chef-repo\third_party_cookbooks\newrelic\templates\default\agent\python newrelic.ini.erb Fri Jul 1 19:03:51 2016 UTC
2 chef-repo.zip\chef-repo\third_party_cookbooks\newrelic\templates\default\agent\python newrelic.ini.erb Mon Oct 2 15:39:36 2017 UTC

157.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 2 524
Changed 1 2
Inserted 0 0
Removed 0 0

157.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

157.4 Active regular expressions

No regular expressions were active.

157.5 Comparison detail

  1   ########## #########
  2   # Generate d by Chef
  3   ########## #########
  4  
  5   # -------- ---------- ---------- ---------- ---------- ---------- ---------- -------
  6  
  7   #
  8   # This fil e configur es the New  Relic Pyt hon Agent.
  9   #
  10   # The path  to the co nfiguratio n file sho uld be sup plied to t he functio n
  11   # newrelic .agent.ini tialize()  when the a gent is be ing initia lized.
  12   #
  13   # The conf iguration  file follo ws a struc ture simil ar to what  you would
  14   # find for  Microsoft  Windows I NI files.  For furthe r informat ion on the
  15   # configur ation file  format se e the Pyth on ConfigP arser docu mentation  at:
  16   #
  17   #    http: //docs.pyt hon.org/li brary/conf igparser.h tml
  18   #
  19   # For furt her discus sion on th e behaviou r of the P ython agen t that can
  20   # be confi gured via  this confi guration f ile see:
  21   #
  22   #    http: //newrelic .com/docs/ python/pyt hon-agent- configurat ion
  23   #
  24  
  25   # -------- ---------- ---------- ---------- ---------- ---------- ---------- -------
  26  
  27   # Here are  the setti ngs that a re common  to all env ironments.
  28  
  29   [newrelic]
  30  
  31   # You must  specify t he license  key assoc iated with  your New
  32   # Relic ac count. Thi s key bind s the Pyth on Agent's  data to y our
  33   # account  in the New  Relic ser vice.
  34   license_ke y = <%= @r esource.li cense %>
  35  
  36   # The appp lication n ame. Set t his to be  the name o f your
  37   # applicat ion as you  would lik e it to sh ow up in N ew Relic U I.
  38   # The UI w ill then a uto-map in stances of  your appl ication in to a
  39   # entry on  your home  dashboard  page.
  40   <% if @res ource.app_ name.nil?  %>
  41   app_name =  Python Ap plication
  42   <% else %>
  43   app_name =  <%= @reso urce.app_n ame %>
  44   <% end %>
  45  
  46   # In order  for high  security t o be enabl ed, this p roperty mu st be set  to true an d the high  security  property i n the New  Relic user
  47   # interfac e must be  enabled. E nabling hi gh securit y means SS L is turne d on, requ est and me ssage queu e paramete rs are not  collected , and
  48   # SQL cann ot be sent  to New Re lic in its  raw form.
  49   <% unless  @resource. high_secur ity.nil? % >
  50   high_secur ity: <%= @ resource.h igh_securi ty %>
  51   <% end %>
  52  
  53   # When "tr ue", the a gent colle cts perfor mance data  about you r
  54   # applicat ion and re ports this  data to t he New Rel ic UI at
  55   # newrelic .com. This  global sw itch is no rmally ove rridden fo r
  56   # each env ironment b elow.
  57   <% if @res ource.enab led.nil? % >
  58   monitor_mo de = true
  59   <% else %>
  60   monitor_mo de = <%= @ resource.e nabled %>
  61   <% end %>
  62  
  63   # Sets the  name of a  file to l og agent m essages to . Useful f or
  64   # debuggin g any issu es with th e agent. T his is not  set by
  65   # default  as it is n ot known i n advance  what user  your web
  66   # applicat ion proces ses will r un as and  where they  have
  67   # permissi on to writ e to. What ever you s et this to  you must
  68   # ensure t hat the pe rmissions  for the co ntaining d irectory a nd
  69   # the file  itself ar e correct,  and that  the user t hat your w eb
  70   # applicat ion runs a s can writ e to the f ile. If no t able to
  71   # write ou t a log fi le, it is  also possi ble to say  "stderr"  and
  72   # output t o standard  error out put. This  would norm ally resul t in
  73   # output a ppearing i n your web  server lo g.
  74   <% if @res ource.logf ile.nil? % >
  75   log_file =  /tmp/newr elic-pytho n-agent.lo g
  76   <% else %>
  77   log_file =  <%= @reso urce.logfi le %>
  78   <% end %>
  79  
  80   # Sets the  level of  detail of  messages s ent to the  log file,  if
  81   # a log fi le locatio n has been  provided.  Possible  values, in
  82   # increasi ng order o f detail,  are: "crit ical", "er ror", "war ning",
  83   # "info" a nd "debug" . When rep orting any  agent iss ues to New
  84   # Relic te chnical su pport, the  most usef ul setting  for the
  85   # support  engineers  is "debug" . However,  this can  generate a  lot
  86   # of infor mation ver y quickly,  so it is  best not t o keep the
  87   # agent at  this leve l for long er than it  takes to  reproduce  the
  88   # problem  you are ex periencing .
  89   <% if @res ource.logl evel.nil?  %>
  90   log_level  = info
  91   <% else %>
  92   log_level  = <%= @res ource.logl evel %>
  93   <% end %>
  94  
  95   # The Pyth on Agent c ommunicate s with the  New Relic  service u sing
  96   # HTTP by  default. I f you want  to commun icate via  HTTPS to
  97   # increase  security,  then turn  on SSL by  setting t his value  to
  98   # true. No te, this w ill result  in increa sed CPU ov erhead to
  99   # perform  the encryp tion invol ved in SSL  communica tion, but  this
  100   # work is  done async hronously  to the thr eads that  process yo ur
  101   # applicat ion code,  so it shou ld not imp act respon se times.
  102   <% if @res ource.daem on_ssl.nil ? %>
  103   ssl = fals e
  104   <% else %>
  105   ssl = <%=  @resource. daemon_ssl  %>
  106   <% end %>
  107  
  108   # The Pyth on Agent w ill attemp t to conne ct directl y to the N ew
  109   # Relic se rvice. If  there is a n intermed iate firew all betwee n
  110   # your hos t and the  New Relic  service th at require s you to u se a
  111   # HTTP pro xy, then y ou should  set both t he "proxy_ host" and
  112   # "proxy_p ort" setti ngs to the  required  values for  the HTTP
  113   # proxy. T he "proxy_ user" and  "proxy_pas s" setting s should
  114   # addition ally be se t if proxy  authentic ation is i mplemented  by
  115   # the HTTP  proxy.
  116   # proxy_ho st = hostn ame
  117   # proxy_po rt =  PORT
  118   # proxy_us er =
  119   # proxy_pa ss =
  120  
  121   # Tells th e transact ion tracer  and error  collector  (when
  122   # enabled)  whether o r not to c apture the  query str ing for th e
  123   # URL and  send it as  the reque st paramet ers for di splay in t he
  124   # UI. When  "true", i t is still  possible  to exclude  specific
  125   # values f rom being  captured u sing the " ignored_pa rams" sett ing.
  126   <% if @res ource.capt ure_params .nil? %>
  127   capture_pa rams = fal se
  128   <% else %>
  129   capture_pa rams = <%=  @resource .capture_p arams %>
  130   <% end %>
  131  
  132   # Space se parated li st of vari ables that  should be  removed f rom
  133   # the quer y string c aptured fo r display  as the req uest
  134   # paramete rs in the  UI.
  135   <% if @res ource.igno red_params .nil? %>
  136   ignored_pa rams =
  137   <% else %>
  138   ignored_pa rams = <%=  @resource .ignored_p arams %>
  139   <% end %>
  140  
  141   # The tran saction tr acer captu res deep i nformation  about slo w
  142   # transact ions and s ends this  to the UI  on a perio dic basis.  The
  143   # transact ion tracer  is enable d by defau lt. Set th is to "fal se"
  144   # to turn  it off.
  145   <% if @res ource.tran saction_tr acer_enabl e.nil? %>
  146   transactio n_tracer.e nabled = t rue
  147   <% else %>
  148   transactio n_tracer.e nabled = < %= @resour ce.transac tion_trace r_enable % >
  149   <% end %>
  150  
  151   # Threshol d in secon ds for whe n to colle ct a trans action tra ce.
  152   # When the  response  time of a  controller  action ex ceeds this
  153   # threshol d, a trans action tra ce will be  recorded  and sent t o
  154   # the UI.  Valid valu es are any  positive  float valu e, or (def ault)
  155   # "apdex_f ", which w ill use th e threshol d for a di ssatisfyin g
  156   # Apdex co ntroller a ction - fo ur times t he Apdex T  value.
  157   <% if @res ource.tran saction_tr acer_thres hold.nil?  %>
  158   transactio n_tracer.t ransaction _threshold  = apdex_f
  159   <% else %>
  160   transactio n_tracer.t ransaction _threshold  = <%= @re source.tra nsaction_t racer_thre shold %>
  161   <% end %>
  162  
  163   # When the  transacti on tracer  is on, SQL  statement s can
  164   # optional ly be reco rded. The  recorder h as three m odes, "off "
  165   # which se nds no SQL , "raw" wh ich sends  the SQL st atement in  its
  166   # original  form, and  "obfuscat ed", which  strips ou t numeric  and
  167   # string l iterals.
  168   <% if @res ource.tran saction_tr acer_recor d_sql.nil?  %>
  169   transactio n_tracer.r ecord_sql  = obfuscat ed
  170   <% else %>
  171   transactio n_tracer.r ecord_sql  = <%= @res ource.tran saction_tr acer_recor d_sql %>
  172   <% end %>
  173  
  174   # Threshol d in secon ds for whe n to colle ct stack t race for a  SQL
  175   # call. In  other wor ds, when S QL stateme nts exceed  this
  176   # threshol d, then ca pture and  send to th e UI the c urrent sta ck
  177   # trace. T his is hel pful for p inpointing  where lon g SQL call s
  178   # originat e from in  an applica tion.
  179   <% if @res ource.tran saction_tr acer_stack _trace_thr eshold.nil ? %>
  180   transactio n_tracer.s tack_trace _threshold  = 0.5
  181   <% else %>
  182   transactio n_tracer.s tack_trace _threshold  = <%= @re source.tra nsaction_t racer_stac k_trace_th reshold %>
  183   <% end %>
  184  
  185   # Determin es whether  the agent  will capt ure query  plans for  slow
  186   # SQL quer ies. Only  supported  in MySQL a nd Postgre SQL. Set t his
  187   # to "fals e" to turn  it off.
  188   <% if @res ource.tran saction_tr acer_slow_ sql.nil? % >
  189   transactio n_tracer.e xplain_ena bled = tru e
  190   <% else %>
  191   transactio n_tracer.e xplain_ena bled = <%=  @resource .transacti on_tracer_ slow_sql % >
  192   <% end %>
  193  
  194   # Threshol d for quer y executio n time bel ow which q uery plans
  195   # will not  not be ca ptured. Re levant onl y when "ex plain_enab led"
  196   # is true.
  197   <% if @res ource.tran saction_tr acer_expla in_thresho ld.nil? %>
  198   transactio n_tracer.e xplain_thr eshold = 0 .5
  199   <% else %>
  200   transactio n_tracer.e xplain_thr eshold = < %= @resour ce.transac tion_trace r_explain_ threshold  %>
  201   <% end %>
  202  
  203   # Space se parated li st of func tion or me thod names  in form
  204   # 'module: function'  or 'module :class.fun ction' for  which
  205   # addition al functio n timing i nstrumenta tion will  be added.
  206   transactio n_tracer.f unction_tr ace =
  207  
  208   # The erro r collecto r captures  informati on about u ncaught
  209   # exceptio ns or logg ed excepti ons and se nds them t o UI for
  210   # viewing.  The error  collector  is enable d by defau lt. Set th is
  211   # to "fals e" to turn  it off.
  212   <% if @res ource.erro r_collecto r_enable.n il? %>
  213   error_coll ector.enab led = true
  214   <% else %>
  215   error_coll ector.enab led = <%=  @resource. error_coll ector_enab le %>
  216   <% end %>
  217  
  218   # To stop  specific e rrors from  reporting  to the UI , set this  to
  219   # a space  separated  list of th e Python e xception t ype names  to
  220   # ignore.  The except ion name s hould be o f the form  'module:c lass'.
  221   <% if @res ource.erro r_collecto r_ignore_e rrors.nil?  %>
  222   error_coll ector.igno re_errors  =
  223   <% else %>
  224   error_coll ector.igno re_errors  = <%= @res ource.erro r_collecto r_ignore_e rrors %>
  225   <% end %>
  226  
  227   # Browser  monitoring  is the Re al User Mo nitoring f eature of  the UI.
  228   # For thos e Python w eb framewo rks that a re support ed, this
  229   # setting  enables th e auto-ins ertion of  the browse r monitori ng
  230   # JavaScri pt fragmen ts.
  231   <% if @res ource.brow ser_monito ring_auto_ instrument .nil? %>
  232   browser_mo nitoring.a uto_instru ment = tru e
  233   <% else %>
  234   browser_mo nitoring.a uto_instru ment = <%=  @resource .browser_m onitoring_ auto_instr ument %>
  235   <% end %>
  236  
  237   # A thread  profiling  session c an be sche duled via  the UI whe n
  238   # this opt ion is ena bled. The  thread pro filer will  periodica lly
  239   # capture  a snapshot  of the ca ll stack f or each ac tive threa d in
  240   # the appl ication to  construct  a statist ically rep resentativ e
  241   # call tre e.
  242   <% if @res ource.thre ad_profile r_enable.n il? %>
  243   thread_pro filer.enab led = true
  244   <% else %>
  245   thread_pro filer.enab led = <%=  @resource. thread_pro filer_enab le %>
  246   <% end %>
  247  
  248   # Enable o r disable  the cross  applicatio n tracer.
  249   # The cros s applicat ion tracer  inserts H TTP header s into out bound requ ests
  250   # and the  response i n order to  link toge ther web t ransaction  metrics a nd
  251   # transact ion traces  between a pplication s.
  252   <% if @res ource.cros s_applicat ion_tracer _enable.ni l? %>
  253   # cross_ap plication_ tracer.ena bled = tru e
  254   <% else %>
  255   cross_appl ication_tr acer.enabl ed = <%= @ resource.c ross_appli cation_tra cer_enable  %>
  256   <% end %>
  257  
  258   <% unless  @resource. feature_fl ag.nil? %>
  259   # Feature  flag
  260   # eg. use  for improv ed Tornado  instrumen tation
  261   # (https:/ /docs.newr elic.com/d ocs/releas e-notes/ag ent-releas e-notes/py thon-relea se-notes/p ython-agen t-232028)
  262   feature_fl ag = @reso urce.featu re_flag
  263   <% end %>