Saya menulis perpustakaan yang memiliki banyak informasi yang dapat digunakan dalam log di program yang menggunakannya, tapi saya tidak tahu cara terbaik untuk mengeksposnya sedemikian rupa sehingga program yang menggunakan perpustakaan saya bisa mengintegrasikan log perpustakaan saya dengan lognya sendiri tanpa terlihat (jika diinginkan).
Memilih perpustakaan logging khusus untuk perpustakaan saya menambah daftar dependensi untuk menggunakan perpustakaan saya serta mengikat program utama ke perpustakaan itu - dan jika beberapa perpustakaan yang digunakan oleh program utama melakukan ini, masing-masing bisa memilih perpustakaan yang berbeda .
Meskipun saya sudah punya program mendaftarkan objek aliran C ++ dengan perpustakaan untuk menggunakannya. Sepertinya itu akan menjadi tujuan yang relatif umum, tetapi saya juga berpikir tentang hanya memiliki program utama mendaftarkan fungsi callback yang akan dipanggil dengan konten dan metadata ketika data dicatat. Opsi lain hanya akan menyimpan data log di perpustakaan dalam semacam daftar untuk program utama untuk mengambil setiap kali ingin menangani data itu, membiarkan program utama memutuskan kapan waktu untuk menangani data.
Saya mencari saran dan kelebihan pendekatan yang berbeda sehingga saya dapat memutuskan apa yang terbaik dalam situasi saya.