github.com/waldiirawan/apm-agent-go/v2@v2.2.2/CHANGELOG.asciidoc (about)

     1  ifdef::env-github[]
     2  NOTE: Release notes are best read in our documentation at
     3  https://www.elastic.co/guide/en/apm/agent/go/current/release-notes.html[elastic.co]
     4  endif::[]
     5  
     6  ////
     7  [[release-notes-x.x.x]]
     8  ==== x.x.x - YYYY/MM/DD
     9  
    10  [float]
    11  ===== Breaking changes
    12  
    13  [float]
    14  ===== Features
    15  * Cool new feature: {pull}2526[#2526]
    16  
    17  [float]
    18  ===== Bug fixes
    19  ////
    20  
    21  [[unreleased]]
    22  === Unreleased
    23  
    24  https://github.com/elastic/apm-agent-go/compare/v2.2.0...main[View commits]
    25  
    26  [[release-notes-2.x]]
    27  === Go Agent version 2.x
    28  
    29  [[release-notes-2.2.0]]
    30  ==== 2.2.0 - 2022/10/31
    31  
    32  - Global labels are now parsed when the tracer is constructed, instead of parsing only once on package initialization {pull}1290[#1290]
    33  - Rename span_frames_min_duration to span_stack_trace_min_duration {pull}1285[#1285]
    34  - Ignore `\*principal\*` headers by default {pull}1332[#1332]
    35  - Add `apmpgx` module for postgres tracing with jackc/pgx driver enhanced support e.g. Copy and Batch statements {pull}1301[#1301]
    36  - Disable same-kind and enable exact-match compression by default {pull}1256[#1256]
    37  - module/apmechov4: add `WithRequestName` option {pull}1268[#1268]
    38  - Added support for adding span links when starting transactions and spans {pull}1269[#1269]
    39  - module/apmawssdkgo: fixed a panic related to drop spans {pull}1273[#1273]
    40  - Added support for the `trace_continuation_strategy` {pull}1270[#1270]
    41  - `transaction.type` and `span.type` are now set to "custom" if an empty string is specified {pull}1272[#1272]
    42  - We now capture the database instance name in `service.target.*`, for improved backend granularity {pull}1279[#1279]
    43  - Improved Kubernetes pod UID and container ID discovery coverage {pull}1288[#1288]
    44  - Fixed `span.name` for AWS SNS spans to match the spec {pull}1286[#1286]
    45  - module/apmgin: add `WithPanicPropagation` option {pull}1314[#1314]
    46  - Exit spans may now have non-exit child spans if they have the same type and subtype {pull}1320[#1320]
    47  - Updated instrumentation modules to mark spans as exit spans where possible {pull}1317[#1317]
    48  
    49  [[release-notes-2.1.0]]
    50  ==== 2.1.0 - 2022/05/20
    51  
    52  - Replace `authorization` with `*auth*` pattern for sanitizing field names {pull}1230[#1230]
    53  - Fetch initial server version async to prevent blocking NewTracer for 10 seconds {pull}1239[#1239]
    54  - Fix race in `apm.DefaultTracer` which could lead to multiple tracers being created {pull}1248[#1248]
    55  
    56  [[release-notes-2.0.0]]
    57  ==== 2.0.0 - 2022/03/17
    58  
    59  - Record `transaction.name` on errors {pull}1177[#1177]
    60  - Fix panic in apmgocql {pull}1180[#1180]
    61  - Stop recording unused `transaction.duration.*` and `transaction.breakdown.count` metrics {pull}1167[#1167]
    62  - Make tracestate parsing more lenient, according to W3c spec, allowing duplicate vendor keys {pull}1183[#1183]
    63  - Introduced `transport.NewHTTPTransportOptions` {pull}1168[#1168]
    64  - Change `ELASTIC_APM_SPAN_FRAMES_MIN_DURATION` special cases to match agent spec {pull}1188[#1188]
    65  - Remove stacktrace.ContextSetter {pull}1187[#1187]
    66  - Drop support for versions of Go prior to 1.15.0 {pull}1190[#1190]
    67  - Replace apm.DefaultTracer with an initialization function {pull}1189[#1189]
    68  - Remove transport.Default, construct a new Transport in each new tracer {pull}1195[#1195]
    69  - Add service name and version to User-Agent header {pull}1196[#1196]
    70  - Remove WarningLogger, add Warningf methe to Logger {pull}1205[#1205]
    71  - Replace Sampler with ExtendedSampler {pull}1206[#1206]
    72  - Drop unsampled txs when connected to an APM Server >= 8.0 {pull}1208[#1208]
    73  - Removed SetTag {pull}1218[#1218]
    74  - Unexport Tracer's fields -- TracerOptions must be used instead {pull}1219[#1219]
    75  
    76  [[release-notes-1.x]]
    77  === Go Agent version 1.x
    78  
    79  [[release-notes-1.15.0]]
    80  ==== 1.15.0 - 2021/12/08
    81  
    82  - Deprecate `http.request.socket.encrypted` and stop recording it in `module/apmhttp`, `module/apmgrpc` and `module/apmfiber`. {pull}1129[#1129]
    83  - Collect and send span destination service timing statistics about the dropped spans to the apm-server. {pull}1132[#1132]
    84  - Experimental support to compress short exit spans into a composite span. Disabled by default. {pull}1134[#1134]
    85  - Discard exit spans shorter or equal than `ELASTIC_APM_EXIT_SPAN_MIN_DURATION`. Defaults to `1ms`. {pull}1138[#1138]
    86  - module/apmprometheus: add support for mapping prometheus histograms. {pull}1145[#1145]
    87  - Fixed a bug where errors in cloud metadata discovery could lead to the process aborting during initialisation {pull}1158[#1158]
    88  - Fixed a data race related to HTTP request header sanitisation {pull}1159[#1159]
    89  - `apm.CaptureError`, `apm.Error.SetTransaction`, and `apm.Error.SetSpan` will now set the associated transaction or span's default outcome to "failure" {pull}1160[#1160]
    90  
    91  [[release-notes-1.14.0]]
    92  ==== 1.14.0 - 2021/09/22
    93  
    94  - span: automatically infer `destination.service.resource` information when the span is an exit span and deprecate `destination.service.name` and `destination.service.type` {pull}1003[#1003]
    95  - module/apmhttp: add apmhttp.WithClientSpanType ClientOption to set the span type of http client requests {pull}1106[#1106]
    96  - module/apmazure: introduce instrumentation module for Azure blob, queue, and file storage {pull}1109[#1109]
    97  - module/apmelasticsearch: propagete `Traceparent` and `Tracestate` headers to Elasticsearch {pull}1002[#1002]
    98  - module/apmfiber: introduce instrumentation module for Fiber web framework {pull}999[#999]
    99  - module/apmawssdkgo: fix a bug where the module would panic when an unsupported service is used {pull}1006[#1006]
   100  - module/apmfasthttp: report the correct HTTP Status Code instead of always reporting `200` {pull}1104[#1104]
   101  
   102  [[release-notes-1.13.1]]
   103  ==== 1.13.1 - 2021/08/05
   104  
   105  - Fix concurrency bugs in breakdown metrics and module/apmhttp.WithClientTrace {pull}997[#997]
   106  
   107  [[release-notes-1.13.0]]
   108  ==== 1.13.0 - 2021/07/28
   109  
   110  - Prefer w3c traceparent header over legacy elastic-apm-traceparent {pull}963[#963]
   111  - Context.SetUsername now takes precedence over HTTP user info from Context.SetHTTPRequest {pull}973[#973]
   112  - module/apmhttp: fix a potential panic in WithClientTrace {pull}989[#989]
   113  - add support for go-restful v3 {pull}968[#968]
   114  - add fasthttp support {pull}957[#957]
   115  - module/apmgin: support multiple routes using the same handler {pull}983[#983]
   116  - add apm-server CA cert functionality {pull}982[#982]
   117  
   118  https://github.com/elastic/apm-agent-go/releases/tag/v1.12.0[View release]
   119  
   120  [[release-notes-1.12.0]]
   121  ==== 1.12.0 - 2021/05/25
   122  
   123  https://github.com/elastic/apm-agent-go/releases/tag/v1.12.0[View release]
   124  
   125  - module/apmgrpc: fix status code to outcome mapping {pull}902[#902]
   126  - module/apmawssdkgo: add support for instrumenting s3 RPC calls {pull}927[#927]
   127  - module/apmawssdkgo: add support for instrumenting dynamodb RPC calls {pull}928[#928]
   128  - SpanContext.SetDestinationService is a no-op if either Name or Resource is empty {pull}931[#931]
   129  - module/apmawssdkgo: add support for instrumenting sqs RPC calls {pull}933[#933]
   130  - module/apmawssdkgo: add support for instrumenting sns RPC calls {pull}938[#938]
   131  - Parse "//" comments in SQL/CQL {pull}937[#937]
   132  - Fix CaptureError to capture the request body when ELASTIC_APM_CAPTURE_BODY is enabled {pull}906[#906]
   133  - module/apmgrpc: record underlying HTTP/2 context {pull}904[#904]
   134  - module/apmot: handle http.host tag as url.Host {pull}954[#954]
   135  - apm: add add ParentID methods to Span and Transaction {pull}956[#956]
   136  
   137  [[release-notes-1.11.0]]
   138  ==== 1.11.0 - 2021/02/01
   139  
   140  https://github.com/elastic/apm-agent-go/releases/tag/v1.11.0[View release]
   141  
   142  - Make TRANSACTION_IGNORE_URLS dynamically configurable: {pull}872[#872]
   143  
   144  [[release-notes-1.10.0]]
   145  ==== 1.10.0 - 2021/01/20
   146  
   147  https://github.com/elastic/apm-agent-go/releases/tag/v1.10.0[View release]
   148  
   149  - module/apmsql: add tracingDriver.Unwrap method to get underlying driver {pull}#849[#849]
   150  - module/apmgopgv10: add support for github.com/go-pg/pg/v10 {pull}857[#857]
   151  - Enable central configuration of "sanitize_field_names" {pull}856[#856]
   152  - module/apmgrpc: set span destination context {pull}861[#861]
   153  
   154  [[release-notes-1.9.0]]
   155  ==== 1.9.0 - 2020/11/02
   156  
   157  https://github.com/elastic/apm-agent-go/releases/tag/v1.9.0[View release]
   158  
   159  - module/apmgoredisv8: introduce new package to support go-redis v8 {pull}780[#780]
   160  - module/apmhttp: introduce httptrace client option {pull}788[#788]
   161  - module/apmsql: add support for database/sql/driver.Validator {pull}791[#791]
   162  - Record sample rate on transactions and spans, propagate through `tracestate` {pull}804[#804]
   163  - module/apmredigo: change redigo dependency to v1.8.2 {pull}807[#807]
   164  - Deprecate IGNORE_URLS, replace with TRANSACTION_IGNORE_URLS {pull}811[#811]
   165  - Tracer.Close now waits for the transport goroutine to end before returning {pull}816[#816]
   166  - Relax Kubernetes pod UID discovery rules {pull}819[#819]
   167  - Add transaction and span outcome {pull}820[#820]
   168  - Add cloud metadata, configurable with ELASTIC_APM_CLOUD_PROVIDER {pull}823[#823]
   169  - Round ELASTIC_APM_SAMPLING_RATE with 4 digits precision {pull}828[#828]
   170  - module/apmhttp: implement io.ReaderFrom in wrapped http.ResponseWriter {pull}830[#830]
   171  - Fixed Transaction.Discard so that it sets TransactionData to nil {pull}836[#836]
   172  - module/apmsql/pgxv4: add support for pgx driver {pull}831[#831]
   173  - module/apmgormv2: add support for gorm.io (GORM v2) {pull}825[#825]
   174  
   175  [[release-notes-1.8.0]]
   176  ==== 1.8.0 - 2020/05/06
   177  
   178  https://github.com/elastic/apm-agent-go/releases/tag/v1.8.0[View release]
   179  
   180  - Add "recording" config option, to dynamically disable event recording {pull}737[#737]
   181  - Enable central configuration of "stack_frames_min_duration" and "stack_trace_limit" {pull}742[#742]
   182  - Implement "CloseIdleConnections" on the Elasticsearch RoundTripper {pull}750[#750]
   183  - Fix apmot nil pointer dereference in Tracer.Inject {pull}763[#763]
   184  
   185  [[release-notes-1.7.2]]
   186  ==== 1.7.2 - 2020/03/19
   187  
   188  https://github.com/elastic/apm-agent-go/releases/tag/v1.7.2[View release]
   189  
   190  - Update cucumber/godog to 0.8.1 {pull}733[#733]
   191  
   192  [[release-notes-1.7.1]]
   193  ==== 1.7.1 - 2020/03/05
   194  
   195  https://github.com/elastic/apm-agent-go/releases/tag/v1.7.1[View release]
   196  
   197  - Fix segfault on 32-bit architectures {pull}728[#728]
   198  
   199  [[release-notes-1.7.0]]
   200  ==== 1.7.0 - 2020/01/10
   201  
   202  https://github.com/elastic/apm-agent-go/releases/tag/v1.7.0[View release]
   203  
   204   - Add span.context.destination.* {pull}664[#664]
   205   - transport: fix Content-Type for pprof data {pull}679[#679]
   206   - Add "tracestate" propagation {pull}690[#690]
   207   - Add support for API Key auth {pull}698[#698]
   208   - module/apmsql: report rows affected {pull}700[#700]
   209  
   210  [[release-notes-1.6.0]]
   211  ==== 1.6.0 - 2019/11/17
   212  
   213  https://github.com/elastic/apm-agent-go/releases/tag/v1.6.0[View release]
   214  
   215   - module/apmhttp: add WithClientRequestName option {pull}609[#609]
   216   - module/apmhttp: add WithPanicPropagation function {pull}611[#611]
   217   - module/apmgoredis: add Client.RedisClient {pull}613[#613]
   218   - Introduce apm.TraceFormatter, for formatting trace IDs {pull}635[#635]
   219   - Report error cause(s), add support for errors.Unwrap {pull}638[#638]
   220   - Setting `ELASTIC_APM_TRANSACTION_MAX_SPANS` to 0 now disables all spans {pull}640[#640]
   221   - module/apmzerolog: add Writer.MinLevel {pull}641[#641]
   222   - Introduce SetLabel and deprecate SetTag {pull}642[#642]
   223   - Support central config for `ELASTIC_APM_CAPTURE_BODY` and `ELASTIC_APM_TRANSACTION_MAX_SPANS` {pull}648[#648]
   224   - module/apmgorm: sql.ErrNoRows is no longer reported as an error {pull}645[#645]
   225   - Server URL path is cleaned/canonicalizsed in order to avoid 301 redirects {pull}658[#658]
   226   - `context.request.socket.remote_address` now reports the peer address {pull}662[#662]
   227   - Experimental support for periodic CPU/heap profiling {pull}666[#666]
   228   - module/apmnegroni: introduce tracing Negroni middleware {pull}671[#671]
   229   - Unescape hyphens in k8s pod UIDs when the systemd cgroup driver is used {pull}672[#672]
   230   - Read and propagate the standard W3C "traceparent" header {pull}674[#674]
   231  
   232  [[release-notes-1.5.0]]
   233  ==== 1.5.0 - 2019/07/31
   234  
   235  https://github.com/elastic/apm-agent-go/releases/tag/v1.5.0[View release]
   236  
   237   - Add Context.SetCustom {pull}581[#581]
   238   - Add support for extracting UUID-like container IDs {pull}577[#577]
   239   - Introduce transaction/span breakdown metrics {pull}564[#564]
   240   - Optimised HTTP request body capture {pull}592[#592]
   241   - Fixed transaction encoding to drop tags (and other context) for non-sampled transactions {pull}593[#593]
   242   - Introduce central config polling {pull}591[#591]
   243   - Fixed apmgrpc client interceptor, propagating trace context for non-sampled transactions {pull}602[#602]
   244  
   245  [[release-notes-1.4.0]]
   246  ==== 1.4.0 - 2019/06/20
   247  
   248  https://github.com/elastic/apm-agent-go/releases/tag/v1.4.0[View release]
   249  
   250   - Update opentracing-go dependency to v1.1.0
   251   - Update HTTP routers to return "<METHOD> unknown route" if route cannot be matched {pull}486[#486]
   252   - module/apmchi: introduce instrumentation for go-chi/chi router {pull}495[#495]
   253   - module/apmgoredis: introduce instrumentation for the go-redis/redis client {pull}505[#505]
   254   - module/apmsql: exposed the QuerySignature function {pull}515[#515]
   255   - module/apmgopg: introduce instrumentation for the go-pg/pg ORM {pull}516[#516]
   256   - module/apmmongo: set minimum Go version to Go 1.10 {pull}522[#522]
   257   - internal/sqlscanner: bug fix for multi-byte rune handling {pull}535[#535]
   258   - module/apmgrpc: added WithServerRequestIgnorer server option {pull}531[#531]
   259   - Introduce `ELASTIC_APM_GLOBAL_LABELS` config {pull}539[#539]
   260   - module/apmgorm: register `row_query` callbacks {pull}532[#532]
   261   - Introduce `ELASTIC_APM_STACK_TRACE_LIMIT` config {pull}559[#559]
   262   - Include agent name/version and Go version in User-Agent {pull}560[#560]
   263   - Truncate `error.culprit` at 1024 chars {pull}561[#561]
   264  
   265  [[release-notes-1.3.0]]
   266  ==== 1.3.0 - 2019/03/20
   267  
   268  https://github.com/elastic/apm-agent-go/releases/tag/v1.3.0[View release]
   269  
   270   - Rename "metricset.labels" to "metricset.tags" {pull}438[#438]
   271   - Introduce `ELASTIC_APM_DISABLE_METRICS` to disable metrics with matching names {pull}439[#439]
   272   - module/apmelasticsearch: introduce instrumentation for Elasticsearch clients {pull}445[#445]
   273   - module/apmmongo: introduce instrumentation for the MongoDB Go Driver {pull}452[#452]
   274   - Introduce ErrorDetailer interface {pull}453[#453]
   275   - module/apmhttp: add CloseIdleConnectons and CancelRequest to RoundTripper {pull}457[#457]
   276   - Allow specifying transaction (span) ID via TransactionOptions/SpanOptions {pull}463[#463]
   277   - module/apmzerolog: introduce zerolog log correlation and exception-tracking writer {pull}428[#428]
   278   - module/apmelasticsearch: capture body for \_msearch, template and rollup search {pull}470[#470]
   279   - Ended Transactions/Spans may now be used as parents {pull}478[#478]
   280   - Introduce apm.DetachedContext for async/fire-and-forget trace propagation {pull}481[#481]
   281   - module/apmechov4: add a copy of apmecho supporting echo/v4 {pull}477[#477]
   282  
   283  [[release-notes-1.2.0]]
   284  ==== 1.2.0 - 2019/01/17
   285  
   286  https://github.com/elastic/apm-agent-go/releases/tag/v1.2.0[View release]
   287  
   288   - Add "transaction.sampled" to errors {pull}410[#410]
   289   - Enforce license header in source files with go-licenser {pull}411[#411]
   290   - module/apmot: ignore "follows-from" span references {pull}414[#414]
   291   - module/apmot: report error log records {pull}415[#415]
   292   - Introduce `ELASTIC_APM_CAPTURE_HEADERS` to control HTTP header capture {pull}418[#418]
   293   - module/apmzap: introduce zap log correlation and exception-tracking hook {pull}426[#426]
   294   - type Error implements error interface {pull}399[#399]
   295   - Add "transaction.type" to errors {pull}433[#433]
   296   - Added instrumentation-specific Go modules (i.e. one for each package under apm/module) {pull}405[#405]
   297  
   298  [[release-notes-1.1.3]]
   299  ==== 1.1.3 - 2019/01/06
   300  
   301  https://github.com/elastic/apm-agent-go/releases/tag/v1.1.3[View release]
   302  
   303   - Remove the `agent.*` metrics {pull}407[#407]
   304   - Add support for new github.com/pkg/errors.Frame type {pull}409[#409]
   305  
   306  [[release-notes-1.1.2]]
   307  ==== 1.1.2 - 2019/01/03
   308  
   309  https://github.com/elastic/apm-agent-go/releases/tag/v1.1.2[View release]
   310  
   311   - Fix data race between Tracer.Active and Tracer.loop {pull}406[#406]
   312  
   313  [[release-notes-1.1.1]]
   314  ==== 1.1.1 - 2018/12/13
   315  
   316  https://github.com/elastic/apm-agent-go/releases/tag/v1.1.1[View release]
   317  
   318   - CPU% metrics are now correctly in the range [0,1]
   319  
   320  [[release-notes-1.1.0]]
   321  ==== 1.1.0 - 2018/12/12
   322  
   323  https://github.com/elastic/apm-agent-go/releases/tag/v1.1.0[View release]
   324  
   325   - Stop pooling Transaction/Span/Error, introduce internal pooled objects {pull}319[#319]
   326   - Enable metrics collection with default interval of 30s {pull}322[#322]
   327   - `ELASTIC_APM_SERVER_CERT` enables server certificate pinning {pull}325[#325]
   328   - Add Docker container ID to metadata {pull}330[#330]
   329   - Added distributed trace context propagation to apmgrpc {pull}335[#335]
   330   - Introduce `Span.Subtype`, `Span.Action` {pull}332[#332]
   331   - apm.StartSpanOptions fixed to stop ignoring options {pull}326[#326]
   332   - Add Kubernetes pod info to metadata {pull}342[#342]
   333   - module/apmsql: don't report driver.ErrBadConn, context.Canceled (#346, #348)
   334   - Added ErrorLogRecord.Error field, for associating an error value with a log record {pull}380[#380]
   335   - module/apmlogrus: introduce logrus exception-tracking hook, and log correlation {pull}381[#381]
   336   - module/apmbeego: introduce Beego instrumentation module {pull}386[#386]
   337   - module/apmhttp: report status code for client spans {pull}388[#388]
   338  
   339  [[release-notes-1.0.0]]
   340  ==== 1.0.0 - 2018/11/14
   341  
   342  https://github.com/elastic/apm-agent-go/releases/tag/v1.0.0[View release]
   343  
   344   - Implement v2 intake protocol {pull}180[#180]
   345   - Unexport Transaction.Timestamp and Span.Timestamp {pull}207[#207]
   346   - Add jitter (+/-10%) to backoff on transport error {pull}212[#212]
   347   - Add support for span tags {pull}213[#213]
   348   - Require units for size configuration {pull}223[#223]
   349   - Require units for duration configuration {pull}211[#211]
   350   - Add support for multiple server URLs with failover {pull}233[#233]
   351   - Add support for mixing OpenTracing spans with native transactions/spans {pull}235[#235]
   352   - Drop SetHTTPResponseHeadersSent and SetHTTPResponseFinished methods from Context {pull}238[#238]
   353   - Stop setting custom context (gin.handler) in apmgin {pull}238[#238]
   354   - Set response context in errors reported by web modules {pull}238[#238]
   355   - module/apmredigo: introduce gomodule/redigo instrumentation {pull}248[#248]
   356   - Update Sampler interface to take TraceContext {pull}243[#243]
   357   - Truncate SQL statements to a maximum of 10000 chars, all other strings to 1024 (#244, #276)
   358   - Add leading slash to URLs in transaction/span context {pull}250[#250]
   359   - Add `Transaction.Context` method for setting framework {pull}252[#252]
   360   - Timestamps are now reported as usec since epoch, spans no longer use "start" offset {pull}257[#257]
   361   - `ELASTIC_APM_SANITIZE_FIELD_NAMES` and `ELASTIC_APM_IGNORE_URLS` now use wildcard matching {pull}260[#260]
   362   - Changed top-level package name to "apm", and canonical import path to "github.com/waldiirawan/apm-agent-go" {pull}202[#202]
   363   - module/apmrestful: introduce emicklei/go-restful instrumentation {pull}270[#270]
   364   - Fix panic handling in web instrumentations {pull}273[#273]
   365   - Migrate internal/fastjson to go.elastic.co/fastjson {pull}275[#275]
   366   - Report all HTTP request/response headers {pull}280[#280]
   367   - Drop Context.SetCustom {pull}284[#284]
   368   - Reuse memory for tags {pull}286[#286]
   369   - Return a more helpful error message when /intake/v2/events 404s, to detect old servers {pull}290[#290]
   370   - Implement test service for w3c/distributed-tracing test harness {pull}293[#293]
   371   - End HTTP client spans on response body closure {pull}289[#289]
   372   - module/apmgrpc requires Go 1.9+ {pull}300[#300]
   373   - Invalid tag key characters are replaced with underscores {pull}308[#308]
   374   - `ELASTIC_APM_LOG_FILE` and `ELASTIC_APM_LOG_LEVEL` introduced {pull}313[#313]
   375  
   376  [[release-notes-0.x]]
   377  === Go Agent version 0.x
   378  
   379  [[release-notes-0.5.2]]
   380  ==== 0.5.2 - 2018/09/19
   381  
   382  https://github.com/elastic/apm-agent-go/releases/tag/v0.5.2[View release]
   383  
   384   - Fixed premature Span.End() in apmgorm callback, causing a data-race with captured errors {pull}229[#229]
   385  
   386  [[release-notes-0.5.1]]
   387  ==== 0.5.1 - 2018/09/05
   388  
   389  https://github.com/elastic/apm-agent-go/releases/tag/v0.5.1[View release]
   390  
   391   - Fixed a bug causing error stacktraces and culprit to sometimes not be set {pull}204[#204]
   392  
   393  [[release-notes-0.5.0]]
   394  ==== 0.5.0 - 2018/08/27
   395  
   396  https://github.com/elastic/apm-agent-go/releases/tag/v0.5.0[View release]
   397  
   398   - `ELASTIC_APM_SERVER_URL` now defaults to "http://localhost:8200" {pull}122[#122]
   399   - `Transport.SetUserAgent` method added, enabling the User-Agent to be set programatically {pull}124[#124]
   400   - Inlined functions are now properly reported in stacktraces {pull}127[#127]
   401   - Support for the experimental metrics API added {pull}94[#94]
   402   - module/apmsql: SQL is parsed to generate more useful span names {pull}129[#129]
   403   - Basic vgo module added {pull}136[#136]
   404   - module/apmhttprouter: added a wrapper type for `httprouter.Router` to simplify adding routes {pull}140[#140]
   405   - Add `Transaction.Context` methods for setting user IDs {pull}144[#144]
   406   - module/apmgocql: new instrumentation module, providing an observer for gocql {pull}148[#148]
   407   - Add `ELASTIC_APM_SERVER_TIMEOUT` config {pull}157[#157]
   408   - Add `ELASTIC_APM_IGNORE_URLS` config {pull}158[#158]
   409   - module/apmsql: fix a bug preventing errors from being captured {pull}160[#160]
   410   - Introduce `Tracer.StartTransactionOptions`, drop variadic args from `Tracer.StartTransaction` {pull}165[#165]
   411   - module/apmgorm: introduce GORM instrumentation module (#169, #170)
   412   - module/apmhttp: record outgoing request URLs in span context {pull}172[#172]
   413   - module/apmot: introduce OpenTracing implementation {pull}173[#173]
   414  
   415  [[release-notes-0.4.0]]
   416  ==== 0.4.0 - 2018/06/17
   417  
   418  https://github.com/elastic/apm-agent-go/releases/tag/v0.4.0[View release]
   419  
   420  First release of the Go agent for Elastic APM