anchor.diff:  == Tuning and Overhead considerations
   
   Using an APM solution comes with certain trade-offs, and the Python agent for Elastic APM is no different.
  -Instrumenting your code, measuring timings, recording context data etc. all need resources: 
  +Instrumenting your code, measuring timings, recording context data, etc., all need resources: 
   
    * CPU time
    * memory
  
positive.code: === Transaction Queue
  
  To reduce the load on the APM Server, the agent does not send every transaction up as it happens.
  Instead, it queues them up, and flushes the queue periodically, or when it reaches a maximum size, using a background thread.
  
  While this reduces the load on the APM Server (and to a certain extent on the agent),
  holding on to the transaction data in a queue uses memory.
  
negative.code: [[tuning-sample-rate]]
  === Transaction Sample Rate
  
  The easiest way to reduce the overhead of the agent is to tell the agent to do less.
  If you set the <<config-transaction-sample-rate,`transaction_sample_rate`>> to a value below `1.0`,
  the agent will randomly sample only a subset of transactions.
  Unsampled transactions only record the name of the transaction, the overall transaction time, and the result:
  
  [options="header"]
  |============
  