Fungsi PdhOpenLogA (pdh.h)

Membuka file log yang ditentukan untuk membaca atau menulis.

Sintaks

PDH_FUNCTION PdhOpenLogA(
  [in]  LPCSTR     szLogFileName,
  [in]  DWORD      dwAccessFlags,
  [in]  LPDWORD    lpdwLogType,
  [in]  PDH_HQUERY hQuery,
  [in]  DWORD      dwMaxSize,
  [in]  LPCSTR     szUserCaption,
  [out] PDH_HLOG   *phLog
);

Parameter

[in] szLogFileName

String yang dihentikan null yang menentukan nama file log yang akan dibuka. Nama dapat berisi jalur absolut atau relatif.

Jika parameter lpdwLogTypePDH_LOG_TYPE_SQL, tentukan nama file log dalam formulir, SQL:DataSourceName!LogFileName.

[in] dwAccessFlags

Jenis akses yang akan digunakan untuk membuka file log. Tentukan salah satu nilai berikut.

Nilai Makna
PDH_LOG_READ_ACCESS
Buka file log untuk dibaca.
PDH_LOG_WRITE_ACCESS
Buka file log baru untuk menulis.
PDH_LOG_UPDATE_ACCESS
Buka file log yang ada untuk menulis.
 

Anda bisa menggunakan operator OR inklusif bitwise (|) untuk menggabungkan tipe akses dengan satu atau beberapa bendera pembuatan berikut.

Nilai Makna
PDH_LOG_CREATE_NEW
Membuat file log baru dengan nama yang ditentukan.
PDH_LOG_CREATE_ALWAYS
Membuat file log baru dengan nama yang ditentukan. Jika file log sudah ada, fungsi akan menghapus file log yang ada sebelum membuat file baru.
PDH_LOG_OPEN_EXISTING
Membuka file log yang ada dengan nama yang ditentukan. Jika file log dengan nama yang ditentukan tidak ada, ini sama dengan PDH_LOG_CREATE_NEW.
PDH_LOG_OPEN_ALWAYS
Membuka file log yang ada dengan nama yang ditentukan atau membuat file log baru dengan nama yang ditentukan.
PDH_LOG_OPT_CIRCULAR
Membuat file log melingkar dengan nama yang ditentukan. Ketika file mencapai nilai parameter dwMaxSize , data dibungkus ke awal file log. Anda hanya dapat menentukan bendera ini jika parameter lpdwLogTypePDH_LOG_TYPE_BINARY.
PDH_LOG_USER_STRING
Digunakan dengan PDH_LOG_TYPE_TSV untuk menulis caption pengguna atau deskripsi file log yang ditunjukkan oleh parameter szUserString dari PdhUpdateLog atau PdhOpenLog. Deskripsi file caption atau log pengguna ditulis sebagai kolom terakhir di baris pertama log teks.

[in] lpdwLogType

Jenis file log yang akan dibuka. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
PDH_LOG_TYPE_UNDEFINED
Format file log yang tidak ditentukan. Jika ditentukan, PDH menentukan jenis file log. Anda tidak dapat menentukan nilai ini jika parameter dwAccessFlagsPDH_LOG_WRITE_ACCESS.
PDH_LOG_TYPE_CSV
File teks yang berisi header kolom di baris pertama, dan rekaman data individual di setiap baris berikutnya. Bidang dari setiap rekaman data dibatasi koma.

Baris pertama juga berisi informasi tentang format file, versi PDH yang digunakan untuk membuat file log, serta nama dan jalur masing-masing penghitung.

PDH_LOG_TYPE_SQL
Sumber data file log adalah database SQL.
PDH_LOG_TYPE_TSV
File teks yang berisi header kolom di baris pertama, dan rekaman data individual di setiap baris berikutnya. Bidang dari setiap rekaman data dibatasi tab.

Baris pertama juga berisi informasi tentang format file, versi PDH yang digunakan untuk membuat file log, serta nama dan jalur masing-masing penghitung.

PDH_LOG_TYPE_BINARY
Format file log biner.

[in] hQuery

Tentukan handel kueri jika Anda menulis data kueri ke file log. Fungsi PdhOpenQuery mengembalikan handel ini.

Parameter ini diabaikan dan harus NULL jika Anda membaca dari file log.

[in] dwMaxSize

Ukuran maksimum file log, dalam byte. Tentukan ukuran maksimum jika Anda ingin membatasi ukuran file atau jika dwAccessFlags menentukan PDH_LOG_OPT_CIRCULAR; jika tidak, atur ke 0.

Untuk file log melingkar, Anda harus menentukan nilai yang cukup besar untuk menyimpan setidaknya satu sampel. Ukuran sampel tergantung pada data yang dikumpulkan. Namun, menentukan nilai setidaknya satu megabyte akan mencakup sebagian besar sampel.

[in] szUserCaption

String yang dihentikan null yang menentukan caption yang ditentukan pengguna dari file log. File log caption umumnya menjelaskan konten file log. Ketika file log yang ada dibuka, nilai parameter ini diabaikan.

[out] phLog

Tangani ke file log yang dibuka.

Nilai kembali

Jika fungsi berhasil, fungsi akan mengembalikan ERROR_SUCCESS.

Jika fungsi gagal, nilai yang dikembalikan adalah kode kesalahan sistem atau kode kesalahan PDH.

Keterangan

Untuk menggunakan fungsi ini untuk menulis data performa ke file log, Anda harus membuka kueri menggunakan PdhOpenQuery dan menambahkan penghitung yang diinginkan ke dalamnya, sebelum memanggil fungsi ini.

Sistem operasi yang lebih baru dapat membaca file log yang dihasilkan pada sistem operasi yang lebih lama; namun, file log yang dibuat pada Windows Vista dan sistem operasi yang lebih baru tidak dapat dibaca pada sistem operasi sebelumnya.

Aturan berikut berlaku untuk file log

  • READ_ACCESS membutuhkan OPEN_EXISTING.

  • UPDATE_ACCESS tidak dapat digunakan dengan log berbasis file. Ini hanya dapat digunakan dengan log database.

  • WRITE_ACCESS membutuhkan salah satu CREATE_NEW, CREATE_ALWAYS, OPEN_EXISTING, OPEN_ALWAYS.

Contoh

Misalnya, lihat Menulis Data Performa ke File Log.

Catatan

Header pdh.h mendefinisikan PdhOpenLog sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header pdh.h
Pustaka Pdh.lib
DLL Pdh.dll

Lihat juga

PdhGetLogFileSize

PdhOpenQuery

PdhUpdateLog

PdhUpdateLogFileCatalog