Forums will be making significant UX changes to address key usability improvements surrounding search, discoverability and navigation.
To learn more about these changes please visit the announcement which can be found
You must use the "log4net.Appender.TraceAppender" which is intended to "Writes logging events to the .NET trace system." The standard Windows Azure logging infrastructure is based on the .NET trace system with a Azure Trace Listener implementation.
Then you need to start the Windows Azure diagnostics monitor in your OnStart() method for the role (done by default by the project template for Azure role):
DiagnosticMonitorConfiguration diagConfig = DiagnosticMonitor.GetDefaultInitialConfiguration();
//diagConfig.Directories.ScheduledTransferPeriod = TimeSpan.FromMinutes(5);
diagConfig.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(5);
diagConfig.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
// For information on handling configuration changes// see the MSDN topic at http://go.microsoft.com/fwlink/?LinkId=166357.
RoleEnvironment.Changing += RoleEnvironmentChanging;
// This code sets up a handler to update CloudStorageAccount instances when their corresponding// configuration settings change in the service configuration file.
CloudStorageAccount.SetConfigurationSettingPublisher((configName, configSetter) =>
// Provide the configSetter with the initial value
RoleEnvironment.Changed += (s, arg) =>
.Any((change) => (change.ConfigurationSettingName == configName)))
// The corresponding configuration setting has changed, propagate the valueif (!configSetter(RoleEnvironment.GetConfigurationSettingValue(configName)))
// In this case, the change to the storage account credentials in the// service configuration is significant enough that the role needs to be// recycled in order to use the latest settings. (for example, the // endpoint has changed)
privatevoid RoleEnvironmentChanging(object sender, RoleEnvironmentChangingEventArgs e)
// If a configuration setting is changingif (e.Changes.Any(change => change is RoleEnvironmentConfigurationSettingChange))
// Set e.Cancel to true to restart this role instance
e.Cancel = true;
And finally, you have to either transfer logs periodically, as I do in last example, or transfer the logs on demand.