Если у вас есть конкурирующие потребности в ведении журнала и производительности, то я полагаю, что вы можете записать свои двоичные данные в файл как есть, возможно, каждой записи предшествует тег, содержащий метку времени и значение длины, чтобы вы знали, где этоКонкретный бит данных заканчивается.Но спешу признаться, это очень некрасиво.Вам понадобится написать утилиту для чтения и анализа этого файла, и без этой утилиты вы будете беспомощны.
Более разумным решением будет сброс ваших двоичных данных в текстовом виде.Я имею в виду «строки» текста, снова начиная с любой информации о тегах, которую вы считаете релевантной, за которой следует некоторая информация о длине в десятичном или шестнадцатеричном формате, а затем столько шестнадцатеричных байтов, сколько необходимо для выгрузки вашего буфера - таким образом, вы можете получитьнесколько довольно длинных строк.Но так как файл имеет линейную структуру, вы можете использовать текстовые инструменты (редактор в простейшем случае) для работы с ним.Шестнадцатеричный дамп означает, что вы используете два байта в журнале для представления одного байта данных (плюс немного служебных данных).Хе-хе, дисковое пространство в наши дни дешевое.
Если эти двоичные буферы имеют довольно непротиворечивую структуру, вы можете даже выделить и пометить поля (или что-то в этом роде), чтобы ваши данные стали немного более читабельными и,что более важно, лучше для поиска.Конечно, вам решать, сколько усилий вы хотите потратить на то, чтобы сделать ваши записи в журнале красивыми;но время, проведенное здесь, вполне может окупиться чуть позже в анализе.