diff --git a/pkg/ingester/instance.go b/pkg/ingester/instance.go index 9c872a5397..0ec2a54271 100644 --- a/pkg/ingester/instance.go +++ b/pkg/ingester/instance.go @@ -253,7 +253,7 @@ func (i *instance) createStream(pushReqStream logproto.Stream, record *wal.Recor bytes += len(e.Line) } validation.DiscardedBytes.WithLabelValues(validation.StreamLimit, i.instanceID).Add(float64(bytes)) - return nil, httpgrpc.Errorf(http.StatusTooManyRequests, validation.StreamLimitErrorMsg) + return nil, httpgrpc.Errorf(http.StatusTooManyRequests, validation.StreamLimitErrorMsg, i.instanceID) } labels, err := syntax.ParseLabels(pushReqStream.Labels) diff --git a/pkg/validation/validate.go b/pkg/validation/validate.go index 399f192a47..a21825118b 100644 --- a/pkg/validation/validate.go +++ b/pkg/validation/validate.go @@ -27,7 +27,7 @@ const ( // StreamLimit is a reason for discarding lines when we can't create a new stream // because the limit of active streams has been reached. StreamLimit = "stream_limit" - StreamLimitErrorMsg = "Maximum active stream limit exceeded, reduce the number of active streams (reduce labels or reduce label values), or contact your Loki administrator to see if the limit can be increased" + StreamLimitErrorMsg = "Maximum active stream limit exceeded, reduce the number of active streams (reduce labels or reduce label values), or contact your Loki administrator to see if the limit can be increased, user: '%s'" // StreamRateLimit is a reason for discarding lines when the streams own rate limit is hit // rather than the overall ingestion rate limit. StreamRateLimit = "per_stream_rate_limit"