私は、このPowerShellコマンドを使用して、ストレージテーブルの行を取得することができます。灰色のストレージテーブルのタイムスタンプを文字列として取得するにはどうすればよいですか?
$temp_table_name = "MY_TABLE_NAME"
$saContext = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccount).Context
$temp_table = Get-AzureStorageTable -Name $temp_table_name -Context $saContext
$result = Get-AzureStorageTableRowAll -table $temp_table
私は私のテーブルに2つのタイムスタンプを持って、1は名前Timestamp
と紺碧のテーブル自体のためであり、もう一つは名前TIMESTAMP
とメトリック(自動的に保存された)のためであります。その後、$result[0]
の結果は怒鳴るようなものです:そこだけTIMESTAMP
であり、もう一つはEtag
である理由私にはわからない
Average : 3228132966.4
Count : 240
CounterName : \Memory\AvailableMemory
DeploymentId : 2c90752b-100f-4640-a056-e2b894bf5bd5
Host : cpuusagetest
Last : 3230662656
Maximum : 3231711232
Minimum : 3225419776
TIMESTAMP : 10/16/2017 10:00:00 PM
Total : 774751911936
PartitionKey : *************
RowKey : ***************__:005CMemory:005CAvailableMemory
Etag : W/"datetime'2017-10-16T23%3A00%3A05.5000867Z'"
!その結果とにかく私は、このコマンドを使用してタイムスタンプを取得できます。
$result[0].Timestamp
それは、10/16/2017 23:00:00
のように常に文字列を返しますが、テーブルの行では、2017-10-16T23:30:00.000
のようなものを保存しています。私はそれがストレージテーブルに格納されている形式を正確に取得する必要があります。
私はこのようなコマンドを使用してフォーマットを変更しようとしました:
[String]$result[0].Timestamp
or
$result[$j].Timestamp.toString("s")
が、結果は同じです。私は$result[$j].Timestamp.GetType().FullName
結果を使用していたときに注意してください
はその後、私のテーブル内のタイムスタンプのプロパティのタイプSystem.DateTime
あるDateTime
であり、私はそれを変更することはできません(と望んでいません)。
上記は私が私のタイムスタンプでミニッツ&セカンド&ミリ秒を持っていることを
を示しているが、私は、このコマンドを使用していたときに私のAzureストレージエクスプローラーのスクリーンショットです:
$result[$j].Timestamp.toString("s")
結果はなしですminuets and seconds ...
これらのコマンドもテストします。
"{0:MM/dd/yyyy hh:mm:ss}" -f $result[$j].Timestamp
ですが、結果は10/16/2017 10:00:00
のようになりますか? 30::
はい、それはですフォーマットを変更するが、私は情報を取得しているので、私はminuets、秒、ミリ秒を失うだろうストレージテーブルから作成すると、フォーマットが変更され、これらのものが削除されます!それをStringに解析すると、それは削除されます...:( –
内部記憶域のタイプが 'DateTime'の場合、' ToString( "s") 'はその行のタイムスタンプを"同じフォーマットで返します( '$ result [0] .TIMESTAMP'が既に' DateTime'であれば、解析する必要はありません - ToString() ')それは、それを文字列に変換する必要があり、それを使って何をやっているのですか?解決しようとしている問題の代替解決策があるかもしれません。 –
@BrendanGreenさらに詳しい情報を追加しました。 Azure Storage Tableに自動的に格納され、同じタイムスタンプ(CPU、メモリ、ネットワークなど)のメトリックがいくつかあります。同じタイムスタンプのメトリック行をすべて1つの行にマージする必要があります。それを別のテーブルに格納します。 –