Próbuję zarejestrować pewne informacje we wtyczce CRM 2011. Nie jestem pewien jak skonfigurować log4net. Gdzie powinienem umieścić plik konfiguracyjny log4net i jak odwoływać się do wtyczki? Dziękuję!
2 odpowiedzi
Zakładając, że rejestrujesz swoje wtyczki w bazie danych, masz kilka możliwości:
- Skonfiguruj log4net programowo. Można to zrobić za pośrednictwem interfejsu API log4net i może być sterowane przez jednostkę konfiguracji w CRM.
Osadź plik konfiguracyjny log4net w zespole wtyczek i skonfiguruj log4net ze strumienia (pokazanego poniżej w klasie bazowej wtyczki, z której mogą dziedziczyć inne wtyczki, które chcą logować)
namespace TestPlugins { public abstract class BaseLoggingPlugin { protected static readonly ILog _log = LogManager.GetLogger(typeof(BaseLoggingPlugin)); static BaseLoggingPlugin() { using(var config = Assembly.GetExecutingAssembly().GetManifestResourceStream("TestPlugins.log4net.config")) { XmlConfigurator.Configure(config); } } } }
Chcę dodać ostrzeżenie do tego, co kończy się poprawną odpowiedzią: jeśli rejestrujesz swój zestaw wtyczek jako zestaw piaskownicy (tryb piaskownicy jest wymagany dla CRM-online), nie będziesz mieć dostępu do systemu plików. W takim przypadku jedyną opcją jest Śledzenie. Powodzenia!
Podobne pytania
Nowe pytania
log4net
Biblioteka Apache log4net to narzędzie pomagające programiście wysyłać instrukcje dziennika do różnych celów wyjściowych. log4net to port doskonałej platformy Apache log4j ™ do środowiska wykonawczego Microsoft® .NET. Zachowaliśmy strukturę podobną do oryginalnego log4j, korzystając z nowych funkcji środowiska uruchomieniowego .NET.