anchor.diff:  === 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.
  +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.
  
positive.code: == 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: 
  
   * CPU time
   * 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"]
  |============
  