public StandardAppMetricsMonitor(AppMetricsMonitorOptions options,
                                  IAppMetricsMonitorWriter writer)
 {
     mOptions = options
                ?? throw new ArgumentNullException(nameof(options));
     mWriter = writer
               ?? throw new ArgumentNullException(nameof(writer));
 }
示例#2
0
        public IAppMetricsMonitorWriterSetup UseWriter(IAppMetricsMonitorWriter writer)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }

            return(UseWriterFactory(() => writer));
        }
        protected void Dispose(bool disposing)
        {
            if (!mIsDisposed)
            {
                if (disposing)
                {
                    StopAsync().Wait();
                    mStateController = null;
                    mWriter          = null;
                }

                mIsDisposed = true;
            }
        }
 public IAppMetricsMonitor BuildMonitor(IAppMetricsMonitorWriter writer)
 {
     return(new StandardAppMetricsMonitor(new AppMetricsMonitorOptions(mCollectionIntervalMilliseconds),
                                          writer: writer));
 }