|
1 | 1 | Changelog |
2 | 2 | ========= |
3 | 3 |
|
| 4 | +29 (2013-05-24) |
| 5 | +--------------- |
| 6 | + |
| 7 | +- Do not harcode path in TailManager. Closes #143. [Jose Diaz-Gonzalez] |
| 8 | + |
| 9 | +- Use /etc/beaver/conf for path and provide conf.d example. Closes #149. |
| 10 | + [Jose Diaz-Gonzalez] |
| 11 | + |
| 12 | +- Added mqtt as option in argparse configuration for the transport flag. |
| 13 | + [Jose Diaz-Gonzalez] |
| 14 | + |
| 15 | +- Fixed broken MqttTransport naming. [Jose Diaz-Gonzalez] |
| 16 | + |
| 17 | +- Refactored BeaverSubprocess to maintain the running command as an |
| 18 | + attribute. [Jose Diaz-Gonzalez] |
| 19 | + |
| 20 | +- Properly parse the beaver conf.d path for new sections. Closes #144. |
| 21 | + Closes #145. Refs #107. [Jose Diaz-Gonzalez] |
| 22 | + |
| 23 | +- Use a Buffered Tokenizer to read large/fast incoming log input. Refs |
| 24 | + #135. Refs #105. [Jose Diaz-Gonzalez] |
| 25 | + |
| 26 | +- Close queue after worker has been stopped. Refs #135. [Jose Diaz- |
| 27 | + Gonzalez] |
| 28 | + |
| 29 | +- Wrap manager.close() call in try/except to mimic the worker |
| 30 | + dispatcher. [Jose Diaz-Gonzalez] |
| 31 | + |
| 32 | +- Properly parse out the port from the `ssh_tunnel` option. Closes #142. |
| 33 | + [Jose Diaz-Gonzalez] |
| 34 | + |
| 35 | +- Subclass the BaseLog class in BeaverSubprocess. Refs #142. [Jose Diaz- |
| 36 | + Gonzalez] |
| 37 | + |
| 38 | +- Move base_log module higher up in hierarchy. Refs #142. [Jose Diaz- |
| 39 | + Gonzalez] |
| 40 | + |
| 41 | +- Disable daemonization on the windows platform. Closes #141. [Jose |
| 42 | + Diaz-Gonzalez] |
| 43 | + |
| 44 | +- Move file unwatching in old-style worker out of for-loop. Refs #139. |
| 45 | + [Jose Diaz-Gonzalez] |
| 46 | + |
| 47 | + Each worker has a `self._file_map` attribute which is a mapping of |
| 48 | + file ids to file data. When retrieving lines or checking on the status |
| 49 | + of the file, we use `iteritems()` which gives us a generator as |
| 50 | + opposed to a copy such as with `items()`. This generator allows us to |
| 51 | + iterate over the files without having issues where the file handle may |
| 52 | + open several times or other random Python issues. |
| 53 | + |
| 54 | + Using a generator also means that the set that we are iterating over |
| 55 | + should not change mid |
| 56 | + iteration, which it does if a file is unwatched. To circumvent this, |
| 57 | + we should use a separate list to keep track of files we need to |
| 58 | + unwatch or rewatch, and do it out of band. |
| 59 | + |
| 60 | + We should also take care to catch `RuntimeError` which may arise when |
| 61 | + closing the Worker out of band |
| 62 | + such as in the `cleanup` step of the worker dispatcher |
| 63 | + but nowhere else. |
| 64 | + |
| 65 | + This should fix issues where logrotate suddenly causes files to |
| 66 | + disappear for a time and beaver tries to tail the file at the exact |
| 67 | + time it is being recreated. |
| 68 | + |
| 69 | +- Typo in SQS docs. [Jonathan Quail] |
| 70 | + |
| 71 | +- Remove ujson requirement. [Jose Diaz-Gonzalez] |
| 72 | + |
| 73 | + This allows users that do not have a compiler in their deployment area |
| 74 | + to install beaver. |
| 75 | + |
| 76 | + Closes #137 |
| 77 | + |
| 78 | +- Turn on logfile output when running in non-daemon contexts. Closes |
| 79 | + #131. [Jose Diaz-Gonzalez] |
| 80 | + |
| 81 | +- Expand logging output path. Closes #133. [Jose Diaz-Gonzalez] |
| 82 | + |
| 83 | +- Ensure logging to a file does not destroy regular logging. Closes |
| 84 | + #132. [Jose Diaz-Gonzalez] |
| 85 | + |
| 86 | +- Properly handle unreadable files by logging a warning instead of |
| 87 | + crashing. Closes #130. [Jose Diaz-Gonzalez] |
| 88 | + |
| 89 | +- Rename null_formatter to raw_formatter in BaseTransport class. [Jose |
| 90 | + Diaz-Gonzalez] |
| 91 | + |
| 92 | +- Ensure that the RedisTransport calls the super invalidate method. Refs |
| 93 | + #93. [Jose Diaz-Gonzalez] |
| 94 | + |
| 95 | +- Fix issue where input type was not being detected properly. [Jose |
| 96 | + Diaz-Gonzalez] |
| 97 | + |
| 98 | +- Use logfile flag for sending all output to a file in daemon contexts. |
| 99 | + [Jose Diaz-Gonzalez] |
| 100 | + |
| 101 | +- Expand path for pidfile creation. [Jose Diaz-Gonzalez] |
| 102 | + |
| 103 | +- Properly handle redis reconnects when the datastore becomes |
| 104 | + unreacheable. Refs #93. [Jose Diaz-Gonzalez] |
| 105 | + |
| 106 | +- 'type' instead of 'exchange_type' in recent pika vers. [Pravir |
| 107 | + Chandra] |
| 108 | + |
| 109 | +- Adding options to make queues durable and HA. [Pravir Chandra] |
| 110 | + |
| 111 | +- Respect stat_interval file configuration in stable worker. [Jose Diaz- |
| 112 | + Gonzalez] |
| 113 | + |
| 114 | +- Unified configuration file using conf_d module. [Jose Diaz-Gonzalez] |
| 115 | + |
| 116 | + This change adds support for a conf.d directory |
| 117 | + configured only via the ` |
| 118 | + |
| 119 | + confd |
| 120 | + path` flag |
| 121 | + which allows beaver to read configuration from multiple files. |
| 122 | + |
| 123 | + Please note that the primary `beaver` stanza MUST be located in the |
| 124 | + file specified by the ` |
| 125 | + |
| 126 | + configfile` argument. Any other such `beaver` stanzas will be ignored. |
| 127 | + |
| 128 | + This change also unifies the `BeaverConfig` and `FileConfig` classes, |
| 129 | + and simplifies the api for retrieving global vs file |
| 130 | + specific data. |
| 131 | + |
| 132 | + Please note that this commit BREAKS custom transport classes, as the |
| 133 | + interface for creating a transport class has changed. If you are |
| 134 | + referencing a `file_config.get(field, filename)` anywhere, please omit |
| 135 | + this and refer to `beaver_config.get_field(field, filename)`. |
| 136 | + |
| 137 | + Closes #107 |
| 138 | + |
| 139 | +- Hack to prevent stupid TypeError: 'NoneType' when running tests via |
| 140 | + setup.py. [Jose Diaz-Gonzalez] |
| 141 | + |
| 142 | +- Properly handle rotated files on Darwin architectures. [Jose Diaz- |
| 143 | + Gonzalez] |
| 144 | + |
| 145 | +- Log to debug instead of warning for file reloading on Darwin |
| 146 | + architectures. [Jose Diaz-Gonzalez] |
| 147 | + |
| 148 | +- Speed up experimental worker. [Jose Diaz-Gonzalez] |
| 149 | + |
| 150 | + Removed inline sleep call, which slowed down passes n*0.1 seconds, |
| 151 | + where n is the number of files being tailed |
| 152 | + |
| 153 | + Inline methods that update data structures which should speed up |
| 154 | + larger installations |
| 155 | + |
| 156 | + Make self.active() an attribute lookup instead of a method call |
| 157 | + |
| 158 | +- Use latest version of message pack interface (0.3.0). Closes #128. |
| 159 | + [Jose Diaz-Gonzalez] |
| 160 | + |
| 161 | +- Alternative for reading python requirements. [Justin Lambert] |
| 162 | + |
| 163 | +- Fix options sent from original worker to queue. Refs #119. [Jose Diaz- |
| 164 | + Gonzalez] |
| 165 | + |
| 166 | +- Allow users to ignore the results of a copytruncate from logrotate. |
| 167 | + Refs #105. [Jose Diaz-Gonzalez] |
| 168 | + |
| 169 | +- Fix rpm package building. Closes #123. [Jose Diaz-Gonzalez] |
| 170 | + |
| 171 | +- Added experimental tail-version of beaver. [Jose Diaz-Gonzalez] |
| 172 | + |
| 173 | +- Beginning work to move from an omniscient worker to individual tail |
| 174 | + objects. [Jose Diaz-Gonzalez] |
| 175 | + |
| 176 | +- Fix kwargs call. [Jose Diaz-Gonzalez] |
| 177 | + |
| 178 | +- Add formatting to mqtt transport. Closes #115. [Jose Diaz-Gonzalez] |
| 179 | + |
| 180 | +- Retrieve more data from callback to minimize dictionary lookups. [Jose |
| 181 | + Diaz-Gonzalez] |
| 182 | + |
| 183 | +- Prefer single quotes to double quotes where possible. [Jose Diaz- |
| 184 | + Gonzalez] |
| 185 | + |
| 186 | +- Ensure stat_interval and tail_lines are both integer values. [Jose |
| 187 | + Diaz-Gonzalez] |
| 188 | + |
| 189 | +- Alphabetize config variables for file_config. [Jose Diaz-Gonzalez] |
| 190 | + |
| 191 | +- Ensure that debug flag is a boolean. [Jose Diaz-Gonzalez] |
| 192 | + |
| 193 | +- Follow logstash covention for 'format' instead of 'message_format' |
| 194 | + [Jose Diaz-Gonzalez] |
| 195 | + |
| 196 | +- Use passed in 'ignore_empty' field instead of a file_config lookup in |
| 197 | + queue module. [Jose Diaz-Gonzalez] |
| 198 | + |
| 199 | +- Prefer discover_interval over update_file_mapping_time. [Jose Diaz- |
| 200 | + Gonzalez] |
| 201 | + |
| 202 | +- Fix TransportException import. Closes #122. [Jose Diaz-Gonzalez] |
| 203 | + |
| 204 | +- Use an alternative method of reading in requirements. Refs #120. [Jose |
| 205 | + Diaz-Gonzalez] |
| 206 | + |
| 207 | +- Auto-reconnect mechanism for the SSH tunnel. [Michael Franz Aigner] |
| 208 | + |
| 209 | +- Fix import of REOPEN_FILES constant in dispatcher.py. [Jose Diaz- |
| 210 | + Gonzalez] |
| 211 | + |
| 212 | +- Fix a PEP8 violation. [Jose Diaz-Gonzalez] |
| 213 | + |
| 214 | +- Ensure all files are utf-8 encoded. [Jose Diaz-Gonzalez] |
| 215 | + |
| 216 | +- Namespace transport classes in the transport module. [Jose Diaz- |
| 217 | + Gonzalez] |
| 218 | + |
| 219 | +- Allow specifying debug mode via argument. [Jose Diaz-Gonzalez] |
| 220 | + |
| 221 | +- Added thread-safety to datetime calls. [Jose Diaz-Gonzalez] |
| 222 | + |
| 223 | +- Added support for message_format. Closes #91. [Jose Diaz-Gonzalez] |
| 224 | + |
| 225 | +- Add msgpack_pure as fallback for C-Based msgpack package. [Jose Diaz- |
| 226 | + Gonzalez] |
| 227 | + |
| 228 | +- Fix issues in sincedb implementation. Refs #116. [Jose Diaz-Gonzalez] |
| 229 | + |
| 230 | +- Fix casting issue when checking start_position. [Jose Diaz-Gonzalez] |
| 231 | + |
| 232 | +- Properly handle Queue.Full exceptions. [Jose Diaz-Gonzalez] |
| 233 | + |
| 234 | +- More logging. [Jose Diaz-Gonzalez] |
| 235 | + |
| 236 | +- Expand the sincedb path on configuration parse. [Jose Diaz-Gonzalez] |
| 237 | + |
| 238 | +- Ignore since.db files. [Jose Diaz-Gonzalez] |
| 239 | + |
| 240 | +- Simplified sincedb support to handle an edge case. Refs #116. [Jose |
| 241 | + Diaz-Gonzalez] |
| 242 | + |
| 243 | +- Remove errant print. [Jose Diaz-Gonzalez] |
| 244 | + |
| 245 | +- Added support for file exclusion in config stanzas. Closes #106. [Jose |
| 246 | + Diaz-Gonzalez] |
| 247 | + |
| 248 | +- Added python regex exclusion support to eglob. Refs #106. [Jose Diaz- |
| 249 | + Gonzalez] |
| 250 | + |
| 251 | +- PEP8. [Jose Diaz-Gonzalez] |
| 252 | + |
| 253 | +- Added a tests directory with some sample tests from users. [Jose Diaz- |
| 254 | + Gonzalez] |
| 255 | + |
| 256 | +- Convert the 'sincedb_write_interval' option to an integer. Refs #116. |
| 257 | + [Jose Diaz-Gonzalez] |
| 258 | + |
| 259 | +- Moved logger call to a more intelligent spot. [Jose Diaz-Gonzalez] |
| 260 | + |
| 261 | +- Ensure that we use the proper encoding when opening a file. Closes |
| 262 | + #104. [Jose Diaz-Gonzalez] |
| 263 | + |
| 264 | +- Centralize file-reading using classmethod open() [Jose Diaz-Gonzalez] |
| 265 | + |
| 266 | +- Fixed issue where tailed lines were not being properly sent to the |
| 267 | + callback. [Jose Diaz-Gonzalez] |
| 268 | + |
| 269 | +- Remove unnecessary argument from Worke.__init__() [Jose Diaz-Gonzalez] |
| 270 | + |
| 271 | +- Force-parse non-unicode files using unicode_dammit. [Jose Diaz- |
| 272 | + Gonzalez] |
| 273 | + |
| 274 | +- Set utf-8 as default encoding on all python files. [Jose Diaz- |
| 275 | + Gonzalez] |
| 276 | + |
| 277 | +- Fixed pyflakes issues. [rtoma] |
| 278 | + |
| 279 | +- Syntax fix of list. [rtoma] |
| 280 | + |
| 281 | +- Raise an AssertionError when run in daemon without a pid path |
| 282 | + specified. Closes #112. [Jose Diaz-Gonzalez] |
| 283 | + |
| 284 | +- Add support for ignoring empty lines. [Jose Diaz-Gonzalez] |
| 285 | + |
| 286 | +- Properly cast boolean values from strings. [Jose Diaz-Gonzalez] |
| 287 | + |
| 288 | +- Ensure all sections have the proper values on start. [Jose Diaz- |
| 289 | + Gonzalez] |
| 290 | + |
| 291 | +- Ensure internal file_config state is updated. [Jose Diaz-Gonzalez] |
| 292 | + |
| 293 | +- Pass in timestamp from worker class for more accurate timestamps at |
| 294 | + the cost of speed of sending. [Jose Diaz-Gonzalez] |
| 295 | + |
| 296 | +- Centralize timestamp retrieval to base transport class. [Jose Diaz- |
| 297 | + Gonzalez] |
| 298 | + |
| 299 | +- Added support for gzipped files. refs #39. [Jose Diaz-Gonzalez] |
| 300 | + |
| 301 | +- Added support for sqlite3-based sincedb. Refs #6 and #39. [Jose Diaz- |
| 302 | + Gonzalez] |
| 303 | + |
| 304 | +- Refactored worker so as to allow further data to be added to the |
| 305 | + file_map. [Jose Diaz-Gonzalez] |
| 306 | + |
| 307 | +- Refactor seek_to_end to properly support file tailing. [Jose Diaz- |
| 308 | + Gonzalez] |
| 309 | + |
| 310 | +- Added support for pubsub zmq. [Jose Diaz-Gonzalez] |
| 311 | + |
| 312 | +- Added support for mosquitto transport. [Jose Diaz-Gonzalez] |
| 313 | + |
| 314 | +- Added support for specifying file encoding, using io.open vs os.open. |
| 315 | + [Jose Diaz-Gonzalez] |
| 316 | + |
| 317 | +- Fix issue where a field may not exist in the data. [Jose Diaz- |
| 318 | + Gonzalez] |
| 319 | + |
| 320 | +- Added support for rawjson format. [Jose Diaz-Gonzalez] |
| 321 | + |
| 322 | +- Fixed zeromq tests. [Jose Diaz-Gonzalez] |
| 323 | + |
| 324 | +- Added SQS transport. [Jonathan Quail] |
| 325 | + |
| 326 | +- Fixing outdated transport docs. [Morgan Delagrange] |
| 327 | + |
4 | 328 | 28 (2013-03-05) |
5 | 329 | --------------- |
6 | 330 |
|
|
0 commit comments