Commit cffc1b13 by Carl Bergquist Committed by GitHub

adds tracing for all bus calls that passes ctx (#29434)

Signed-off-by: bergquist <carl.bergquist@gmail.com>
parent 107f6582
......@@ -433,7 +433,7 @@ func NotificationTest(c *models.ReqContext, dto dtos.NotificationTestCommand) Re
SecureSettings: dto.SecureSettings,
}
if err := bus.Dispatch(cmd); err != nil {
if err := bus.DispatchCtx(c.Req.Context(), cmd); err != nil {
if errors.Is(err, models.ErrSmtpNotEnabled) {
return Error(412, err.Error(), err)
}
......
......@@ -5,6 +5,8 @@ import (
"errors"
"fmt"
"reflect"
"github.com/opentracing/opentracing-go"
)
// HandlerFunc defines a handler function interface.
......@@ -84,6 +86,11 @@ func (b *InProcBus) SetTransactionManager(tm TransactionManager) {
func (b *InProcBus) DispatchCtx(ctx context.Context, msg Msg) error {
var msgName = reflect.TypeOf(msg).Elem().Name()
span, ctx := opentracing.StartSpanFromContext(ctx, "bus - "+msgName)
defer span.Finish()
span.SetTag("msg", msgName)
var handler = b.handlersWithCtx[msgName]
if handler == nil {
return ErrHandlerNotFound
......
......@@ -30,10 +30,10 @@ var (
)
func init() {
bus.AddHandler("alerting", handleNotificationTestCommand)
bus.AddHandlerCtx("alerting", handleNotificationTestCommand)
}
func handleNotificationTestCommand(cmd *NotificationTestCommand) error {
func handleNotificationTestCommand(ctx context.Context, cmd *NotificationTestCommand) error {
notifier := newNotificationService(nil)
model := &models.AlertNotification{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment