void IMySystemEvents.SystemIsBeingStarted(string moduleKey, Assembly[] entryAssemblies) { if (entryAssemblies.IsEmpty()) entryAssemblies = new[] { Assembly.GetEntryAssembly() }; var entryAssembly = entryAssemblies[0]; var entryName = entryAssembly != null ? entryAssembly.GetName().Name : "unknown"; _log.Info("SystemEvents: system is starting (entry='{0}')", entryName); try { initialize_modules(moduleKey, entryAssemblies); _log.Info("SystemEvents: modules are initialized"); } catch (Exception ex) { _log.Error(ex, "SystemEvents: failed to initialize modules"); } raise_event(_onSystemStart, "on start"); }