Quindi per rispondere alla mia stessa domanda: è possibile. Non sono sicuro di come sarà la nostra storia di spiegazioni, poiché ciò avverrà tra poche settimane.
Ho praticamente preso le informazioni da queste fonti e l'ho fatto funzionare. Questo spiega come far funzionare gli assiemi di riferimento con SSIS, click here. Versione TLDR: posizionala nel GAC e copia anche la DLL nella cartella del tuo framework targetted. Nel mio caso, C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727. Per configurare a livello di programmazione log4net ho finito per utilizzare this link come riferimento.
Ecco come il mio codice di configurazione logger assomiglia per la creazione di un file con il timestamp su di esso:
using log4net;
using log4net.Config;
using log4net.Layout;
using log4net.Appender;
public class whatever
{
private ILog logger;
public void InitLogger()
{
PatternLayout layout = new PatternLayout("%date [%level] - %message%newline");
FileAppender fileAppenderTrace = new FileAppender();
fileAppenderTrace.Layout = layout;
fileAppenderTrace.AppendToFile = false;
// Insert current date and time to file name
String dateTimeStr = DateTime.Now.ToString("yyyyddMM_hhmm");
fileAppenderTrace.File = string.Format("c:\\{0}{1}", dateTimeStr.Trim() ,".log");
// Configure filter to accept log messages of any level.
log4net.Filter.LevelMatchFilter traceFilter = new log4net.Filter.LevelMatchFilter();
traceFilter.LevelToMatch = log4net.Core.Level.All;
fileAppenderTrace.ClearFilters();
fileAppenderTrace.AddFilter(traceFilter);
fileAppenderTrace.ImmediateFlush = true;
fileAppenderTrace.ActivateOptions();
// Attach appender into hierarchy
log4net.Repository.Hierarchy.Logger root = ((log4net.Repository.Hierarchy.Hierarchy)LogManager.GetRepository()).Root;
root.AddAppender(fileAppenderTrace);
root.Repository.Configured = true;
logger = log4net.LogManager.GetLogger("root");
}
}
Speriamo che questo potrebbe aiutare qualcuno in futuro, o almeno servire come riferimento se mai bisogno di fallo di nuovo.
Perché non utilizzare le molte opzioni incorporati in SSIS per la registrazione? –
Non li ho mai provati. Ma i pacchetti precedenti realizzati da altre persone qui hanno generato registri che sono inutili. Credo di poterlo provare per il momento, ma essere in grado di usare i poteri di l4n sarebbe fantastico. – enriquein
Quindi, dopo aver implementato la registrazione SSIS in un file di testo, posso concludere che 1) il formato è piuttosto brutto. 2) l'informazione importante è sempre alla fine della linea. 3) il file di log continua ad essere accodato, non viene mai sovrascritto (che è ciò di cui abbiamo bisogno). Anche io sento che non è flessibile come si vorrebbe. Questo è probabilmente un altro esempio di Microsoft che pensa a ciò che un cliente potrebbe volere invece di chiedere direttamente ai clienti ciò di cui hanno effettivamente bisogno. – enriquein