0

I am getting the following error while using DD4T content delivery in one of my application. I have not provided any dd4t logging provider in my web.config and hence it is trying to write to event log but I am not able to understand where to provide the permissions and to which user.We cannot use log4net for logging due to some organizational constraints.

   Codemesh.JuggerNET.JuggerNETFrameworkException: Exception occurred during configuration callback ---> System.InvalidOperationException:
 Cannot open log for source 'Content Delivery.NET'. You may not have write access. ---> System.ComponentModel.Win32Exception: Access is denied --- 
End of inner exception stack trace --- at System.Diagnostics.EventLogInternal.OpenForWrite(String currentMachineName) at 
System.Diagnostics.EventLogInternal.InternalWriteEvent(UInt32 eventID, UInt16 category, 
EventLogEntryType type, String[] strings, Byte[] rawData, String currentMachineName) at 
System.Diagnostics.EventLogInternal.WriteEntry(String message, EventLogEntryType type, 
Int32 eventID, Int16 category, Byte[] rawData) at 
System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type) at 
Tridion.ContentDelivery.Web.Jvm.EventLogger.WriteEntry(String entryMessage, 
EventLogEntryType type) at 
Tridion.ContentDelivery.Web.Jvm.ConfigurationHook.ConfigMethod(IJvmLoader loader, Int32 
when) at Codemesh.JuggerNET.JvmLoader.GetJvmLoader(Boolean bEnvOverrides, Boolean bDefaultJvm, TraceFacility fac, TraceLevel level) --- End of inner exception stack trace --- at Codemesh.JuggerNET.JvmLoader.GetJvmLoader(Boolean bEnvOverrides, Boolean bDefaultJvm, TraceFacility fac, TraceLevel level) at Codemesh.JuggerNET.JvmLoader.GetJvmLoader() at Codemesh.JuggerNET.JavaClass.init() at Codemesh.JuggerNET.JavaClass.get_JObject() at Codemesh.JuggerNET.JavaMethod.init() at Codemesh.JuggerNET.JavaMethod.get_MethodPtr() at 
Codemesh.JuggerNET.JavaMethod.get_Handle() at 
Codemesh.JuggerNET.JavaMethod.CallObject(JavaProxy jpo) at Com.Tridion.Broker.Querying.Query..ctor() at Tridion.ContentDelivery.DynamicContent.Query.Query..ctor() at 
DD4T.Providers.SDLTridion2011sp1.TridionPageProvider.GetContentByUrl(String Url) at 
DD4T.Factories.PageFactory.TryFindPage(String url, IPage& page) at
4

This error means the windows event log source Content Delivery.Net is either not present or configured to not allow the application pool user write access.

The SDL Tridion 2013 SP1 installation sources (subfolder Content Delivery\roles\deployer\dotNet\x86_64) come with an EventLogCreator.exe tool which is designed to create the windows event log source; try running that with admin privileges on the machine.

| improve this answer | |
1

There are two log files you may have, dd4t log files by default it will be creating under App_Data, If you are using your own log files location make sure that folder has write permission for your website apppool.

bin/config/logback.xml you may configured to logs the broker Tridion ContentDelivery core logs. Make sure that you have your website apppool having write permission to that folder.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.