Like Prometheus, but for logs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
loki/pkg/ruler/ruler.go

34 lines
736 B

package ruler
import (
"github.com/cortexproject/cortex/pkg/ruler"
"github.com/cortexproject/cortex/pkg/ruler/rulestore"
"github.com/go-kit/kit/log"
"github.com/prometheus/client_golang/prometheus"
"github.com/grafana/loki/pkg/logql"
)
func NewRuler(cfg Config, engine *logql.Engine, reg prometheus.Registerer, logger log.Logger, ruleStore rulestore.RuleStore, limits RulesLimits) (*ruler.Ruler, error) {
mgr, err := ruler.NewDefaultMultiTenantManager(
cfg.Config,
MemstoreTenantManager(
cfg,
engine,
limits,
),
prometheus.DefaultRegisterer,
logger,
)
if err != nil {
return nil, err
}
return ruler.NewRuler(
cfg.Config,
MultiTenantManagerAdapter(mgr),
reg,
logger,
ruleStore,
limits,
)
}