示例#1
0
        public GrainProfilerFilter(IGrainProfiler profiler, ILogger <GrainProfilerFilter> logger, GrainMethodFormatterDelegate formatMethodName,
                                   Func <IIncomingGrainCallContext, string> oldFormatMethodName)
        {
            this.profiler = profiler;
            this.logger   = logger;

            if (oldFormatMethodName != NoopOldGrainMethodFormatter)
            {
                this.formatMethodName = new GrainMethodFormatterDelegate(oldFormatMethodName);
            }
            else
            {
                this.formatMethodName = formatMethodName ?? DefaultGrainMethodFormatter;
            }
        }
        public GrainProfiler(
            ILogger <GrainProfiler> logger,
            ILocalSiloDetails localSiloDetails,
            GrainMethodFormatterDelegate formatMethodName,
            IGrainFactory grainFactory)
        {
            this.logger           = logger;
            this.localSiloDetails = localSiloDetails;
            this.grainFactory     = grainFactory;

            this.formatMethodName = formatMethodName;

            // register timer to report every second
            timer = new Timer(ProcessStats, null, 1 * 1000, 1 * 1000);
        }
示例#3
0
 public GrainProfilerFilter(IGrainProfiler profiler, ILogger <GrainProfilerFilter> logger, GrainMethodFormatterDelegate formatMethodName)
 {
     this.profiler         = profiler;
     this.logger           = logger;
     this.formatMethodName = formatMethodName ?? DefaultGrainMethodFormatter;
 }