2014-02-05 5 views
5

Ich versuche Semantinc zu konfigurieren Ausloggen aus dem Prozess, um nach Azure zu schreiben.Konfigurieren von PartitionKey mit Semantic Logging Windows Azure

Endlich habe ich es geschafft, Ereignisse in einen Tabellenspeicher zu schreiben. Mein Problem ist, wie ich PartitionKey definiere.

ich eingefügt nur ein paar Tests und die PartitionKeys sind:

2520107100599999999 
2520107103599999999 

ich die Partitionen von mir definiert haben möchte (zB Partition Tag).

Wie mache ich das?

Dies ist meine aktuelle Konfiguration

<windowsAzureTableSink name="Windows Azure Storage" instanceName="xxxxxxx" connectionString="xxxxxxx"> 
    <sources> 
     <eventSource name="myCompany" level="Error"/> 
    </sources> 
</windowsAzureTableSink> 
+0

Gibt es einen besonderen Grund für den angepassten PartitionKey? –

+0

Ich möchte tägliche Partitionen haben – Jordi

+0

@guarav Abfrage Leistung über Nicht-Partition und Zeilenschlüssel Spalten ist arm, müssen Sie durchsuchbare Informationen in diese beiden Spalten erzwingen – pnewhook

Antwort

2

nicht wirklich eine Antwort auf Ihre Frage, aber ich nehme an, dass Sie Partition für Tag angeben wollen, weil Sie diese Daten auf einen Zeitpunkt Basis abfragen möchte. Vorausgesetzt, dies ist richtig, können Sie dies mit dem aktuellen Partitionierungsschema erreichen. Im Wesentlichen repräsentiert der PartitionKey, den Sie sehen, den Datum/Uhrzeit-Wert. So wird es abgeleitet:

DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks 

Der PartitionKey-Wert hat eine Granularität auf Minutenebene. Wenn Sie also die obige Logik anwenden, wird 2520107100599999999 im Wesentlichen in 2014-02-05T08:59:00Z übersetzt.

Wieder kann ich falsch in meiner Annahme sein und wenn das der Fall ist, lass es mich wissen und ich werde die Antwort löschen. Ich dachte, ich würde es posten, da es nicht wirklich offensichtlich ist, dass ein Date/Time-Wert aus dem PartitionKey-Wert abgeleitet werden kann.

+0

Haben Sie eine Idee, wie die Definition der Partition zu ändern? – Jordi

+0

Ich glaube nicht, es sei denn, Sie gehen und ändern Sie es im Quellcode der Bibliothek. –

+2

Hier im Quellcode werden Sie die Änderung vornehmen: http://slab.codeplex.com/SourceControl/latest#source/Src/SemanticLogging.WindowsAzure/Sinks/DateTimeExtensions.cs. –

Verwandte Themen