イベント 4624 (ログオン) および 4634 (ログオフ) についてある程度の知識があります。Microsoft のドキュメントが示唆するように、これらのイベントを Logonid と関連付けることができます。
Here my question is, is there any other efficient way to do this?
Because my need would be, I have to read events for last 30 days, and correlate logon and logonoff events to find the logon duration.
ドキュメントによると、Logonid は同じコンピューターの再起動間で一意です。そのため、その期間 (過去 30 日間) に、コンピューターが数回再起動される可能性があります。そのため、過去 30 日間のイベントを分析している間、Logonid が重複している可能性があると思われます。