1<html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4<title>TODO in future releases</title> 5<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css"> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="../index.html" title="Chapter 1. Boost.Log v2"> 8<link rel="up" href="../index.html" title="Chapter 1. Boost.Log v2"> 9<link rel="prev" href="changelog.html" title="Changelog"> 10<link rel="next" href="acknowledgments.html" title="Acknowledgments"> 11</head> 12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13<table cellpadding="2" width="100%"><tr><td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td></tr></table> 14<hr> 15<div class="spirit-nav"> 16<a accesskey="p" href="changelog.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="acknowledgments.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> 17</div> 18<div class="section"> 19<div class="titlepage"><div><div><h2 class="title" style="clear: both"> 20<a name="log.todo"></a><a class="link" href="todo.html" title="TODO in future releases">TODO in future releases</a> 21</h2></div></div></div> 22<p> 23 Points in this section are not necessarily going to be implemented. These are 24 mainly some thoughts on further improvements of the library. 25 </p> 26<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 27<li class="listitem"> 28 Optimize single-threaded configuration. In many places dynamic memory allocation 29 can be avoided if multithreading support is disabled. 30 </li> 31<li class="listitem"> 32 SNMP support. The idea is to implement a sink backend that would emit SNMP 33 traps as a result of processing log records. This needs quite an amount 34 of research and thinking over. 35 </li> 36<li class="listitem"> 37 Provide a compile-time option to remove all logging from the application 38 (the compiled binary should contain no traces of logging internally). There 39 are two reasons for this request: attempting to achieve maximum performance 40 and concealing internal information, such as function names and internal 41 messages, to prevent reverse engineering in no-logging builds. Effectively, 42 this would require not only all library macros to be redefined to emptiness, 43 but also to provide dummy implementations of many library components. Needs 44 more consideration. Perhaps, suppressing only macros would be sufficient. 45 </li> 46<li class="listitem"> 47 Provide a macro, like <code class="computeroutput"><span class="identifier">BOOST_LOG_FUNCTION</span></code>, 48 but with ability to automatically log all function arguments. 49 </li> 50<li class="listitem"> 51 Think over a header-only configuration. Perhaps, with a reduced functionality. 52 </li> 53<li class="listitem"> 54 Update syslog support to <a href="http://tools.ietf.org/html/rfc5424" target="_top">RFC 55 5424</a>. 56 </li> 57<li class="listitem"> 58 Provide some kind of shared formatters. The idea is that several sinks 59 may use the same formatter. If a log record passes filtering to multiple 60 such sinks, the formatting is done just once for all sinks that share the 61 formatter. Maybe, it will require refactoring the sinks architecture, transforming 62 them into pipelines with formatter and backends being just steps in log 63 record processing. 64 </li> 65<li class="listitem"> 66 Allow to change the locale for the file stream in the text file backend. 67 The locale can alter the character code conversion in wide-character logging. 68 </li> 69<li class="listitem"> 70 Improve file collection in the file sink. Make it possible to (i) rename 71 collected files and (ii) collect files in a dedicated thread. 72 </li> 73<li class="listitem"> 74 Provide headers with forward declarations of the library components. 75 </li> 76<li class="listitem"> 77 Make it possible to update library configuration after loading settings 78 from a file. Probably, this will require a new configuration entity that 79 will be able to detect and apply changes between settings. 80 </li> 81<li class="listitem"> 82 Develop a statistics gathering framework. The basic idea is to provide 83 a specific log source and a pin. The user can pin his data or explicitly 84 indicate events by invoking the log source. The source would automatically 85 collect the data from the pinned variables. This source should have a better 86 integration with filters to be able which pins should be collected and 87 which should not. 88 </li> 89<li class="listitem"> 90 Allow to specify a process ID in the file name pattern for file-based sinks. 91 </li> 92<li class="listitem"> 93 Improve support for <code class="computeroutput"><span class="identifier">format</span></code> 94 formatter, implement placeholder format flags. 95 </li> 96</ul></div> 97</div> 98<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 99<td align="left"></td> 100<td align="right"><div class="copyright-footer">Copyright © 2007-2019 Andrey Semashev<p> 101 Distributed under the Boost Software License, Version 1.0. (See accompanying 102 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>). 103 </p> 104</div></td> 105</tr></table> 106<hr> 107<div class="spirit-nav"> 108<a accesskey="p" href="changelog.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="acknowledgments.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> 109</div> 110</body> 111</html> 112