on master help sign in
readme cleanup

Consolidating readme into individual readme files. Hackage now will render readmes so there's not much reason to replicate the information in both places.

commit1ad81384dbdc2ba0cad90f6c63b013d55a9a8df4 authorMichael Xavier <michael@michaelxavier.net> dateFri 4 Mar 2016, 12:32 (11 years ago) parentb0a6054
8 files changed+103−57
README.md+10−6 katip-elasticsearch/README.md+24 katip-elasticsearch/changelog.md+4 katip-elasticsearch/katip-elasticsearch.cabal+4−23 katip/README.md+54 katip/changelog.md+4 katip/katip.cabal+3−28 katip/katip.jpg
README.md+10−6
@@ -1,17 +1,21 @@
1+# Katip [![Build Status](https://travis-ci.org/Soostone/katip.svg?branch=master)](https://travis-ci.org/Soostone/katip)
12
2−# Katip
3+Katip is a structured logging framework for Haskell.
34
4−A structured log framework. See `katip.cabal`,
5−`katip-elasticsearch.cabal`, and `katip/examples`.
5+![Katip](./katip.jpg)
6+
7+Kâtip (pronounced kah-tip) is the Turkish word for scribe.
68
79## katip
810
9−This is the core katip logging library. It includes a file handle logger.
11+This is the core katip logging library. It includes a file handle
12+logger.
13+
14+See [katip's readme](./katip/README.md) for more details.
1015
1116
1217## katip-elasticsearch
1318
1419ElasticSearch backend for katip using the `bloodhound` package.
1520
16−
17−
21+See [katip-elasticsearch's readme](./katip-elasticsearch/README.md) for more details.
katip-elasticsearch/README.mdnew file+24
@@ -0,0 +1,24 @@
1+# Katip Elasticsearch [![Build Status](https://travis-ci.org/Soostone/katip.svg?branch=master)](https://travis-ci.org/Soostone/katip)
2+
3+katip-elasticsearch is a scribe for the Katip logging framework that
4+sends structured logs to ElasticSearch.
5+
6+## Features
7+
8+* Built in bounded buffering.
9+
10+* Configurable pool of logging workers to help with high write
11+ volume.
12+
13+* Optional field type annotation to avoid mistyping values.
14+
15+* Optional automatic date sharding, so logs can be filed into monthly,
16+ weekly, daily, hourly, every minute indices. You can even specify
17+ your own index routing logic. This pattern can be seen in the ELK
18+ stack as a way of keeping indexes reasonably sized and easy to
19+ optimize, rotate, and manage.
20+
21+* Customizable retry policy for temporary outages and errors.
22+
23+* Automatic index and mapping setup.
24+
katip-elasticsearch/changelog.mdnew file+4
@@ -0,0 +1,4 @@
1+0.1.0.0
2+==============
3+
4+Initial release
katip-elasticsearch/katip-elasticsearch.cabal+4−23
@@ -1,27 +1,6 @@
11name: katip-elasticsearch
22synopsis: ElasticSearch scribe for the Katip logging framework.
3−description:
4−
5− katip-elasticsearch is a scribe for the Katip logging framework that
6− sends structured logs to ElasticSearch. Some noteworthy features:
7−
8− * Built in bounded buffering.
9−
10− * Configurable pool of logging workers to help with high write
11− volume.
12−
13− * Optional field type annotation to avoid mistyping values.
14−
15− * Optional automatic date sharding, so logs can be filed into
16− monthly, daily, hourly, every minute indices. You can even specify
17− your own index routing logic. This pattern can be seen in the ELK
18− stack as a way of keeping indexes reasonably sized and easy to
19− optimize, rotate, and manage.
20−
21− * Customizable retry policy for temporary outages and errors.
22−
23− * Automatic index and mapping setup.
24−
3+description: See README.md for more details.
254version: 0.1.0.0
265license: BSD3
276license-file: LICENSE
@@ -32,6 +11,8 @@ category: Data
3211build-type: Simple
3312cabal-version: >=1.10
3413extra-source-files:
14+ README.md
15+ changelog.md
3516 bench/Main.hs
3617 test/Main.hs
3718
@@ -45,7 +26,7 @@ library
4526 Katip.Scribes.ElasticSearch.Annotations
4627 build-depends:
4728 base >=4.6 && <5
48− , katip
29+ , katip >= 0.1.0.0 && < 0.2
4930 , bloodhound >= 0.11.0.0 && < 0.12
5031 , random >= 1.0 && < 1.2
5132 , uuid >= 1.3 && < 1.4
katip/README.mdnew file+54
@@ -0,0 +1,54 @@
1+# Katip [![Build Status](https://travis-ci.org/Soostone/katip.svg?branch=master)](https://travis-ci.org/Soostone/katip)
2+
3+Katip is a structured logging framework for Haskell.
4+
5+![Katip](./katip.jpg)
6+
7+Kâtip (pronounced kah-tip) is the Turkish word for scribe.
8+
9+## Features
10+
11+* *Battle-Tested:* Katip has been integrated into several production
12+ systems since 2015 and has logged hundreds of millions of messages
13+ to files and ElasticSearch.
14+
15+* *Easy to Use:* Katip was designed to be easily integrated into
16+ existing systems. By using a typeclass for logging facilities,
17+ individual subsystems and even libraries can easily add their own
18+ namespacing and context without having any knowledge of their
19+ logging environment.
20+
21+* *Structured:* Logs are structured, meaning they can be individually
22+ tagged with key value data (JSON Objects). This helps you add
23+ critical details to log messages before you need them so that when
24+ you do, they are available. Katip exposes a typeclass for log
25+ payloads so that you can use rich, domain-specific Haskell types to
26+ add context that will be automatically merged in with existing log
27+ context.
28+
29+* *Debug-Friendly:* Critical details for monitoring production systems
30+ such as host, PID, thread id, module and line location are
31+ automatically captured. User-specified attributes such ass
32+ environment (e.g. Production, Test, Dev) and system name are also
33+ captured.
34+
35+* *Extensible:* Can be easily extended (even at runtime) to output to
36+ multiple backends at once (known as scribes). See
37+ @katip-elasticsearch@ as an example.
38+
39+* *Configurable:*. Can be adjusted on a per-scribe basis both with
40+ verbosity and severity.
41+
42+ * *Verbosity* dictates how much of the log structure should
43+ actually get logged. In code you can capture highly detailed
44+ metadata and decide how much of that gets emitted to each backend.
45+ * *Severity* AKA "log level" is specified with each message and
46+ individual scribes can decide whether or not to record that
47+ severity. It is even possible to at runtime swap out and replace
48+ loggers, allowing for swapping in verbose debug logging at runtime
49+ if you want.
50+
51+
52+## Examples
53+Be sure to look in the @examples@ directory for some examples of how
54+to integrate Katip into your own stack.
katip/changelog.mdnew file+4
@@ -0,0 +1,4 @@
1+0.1.0.0
2+==============
3+
4+Initial release
katip/katip.cabal+3−28
@@ -2,33 +2,7 @@ name: katip
22version: 0.1.0.0
33synopsis: A structured logging framework.
44description:
5− Katip is a structured logging framework with following design goals:
6−
7− * Logs are structured, meaning they can be individually tagged with
8− key value data (JSON Objects). This helps you add critical
9− details to log messages before you need them so that when you do,
10− they are available. Logs are also namespaced to help filter
11− different subsystems.
12−
13− * Critical details for monitoring production systems such as host,
14− PID, thread id, module and line location are automatically
15− captured.
16−
17− * Can be easily extended (even at runtime) to output to multiple
18− destinations at once (known as scribes). See @katip-elasticsearch@
19− as an example.
20−
21− * Designed to be highly configurable. Can be adjusted both with
22− verbosity, which dictates how much of the log structure should
23− actually get logged, and severity. Each individual scribe can be
24− configured to a different log severity. It is even possible to at
25− runtime swap out and replace loggers, allowing for swapping in
26− verbose debug logging at runtime if you want.
27−
28− A note on the name: Katip is Turkish for scribe.
29−
30− Be sure to look in the @examples@ directory for some examples of how
31− do integrate Katip into your own stack.
5+ Katip is a structured logging framework. See README.md for more details.
326
337license: BSD3
348license-file: LICENSE
@@ -39,6 +13,8 @@ category: Data, Text, Logging
3913build-type: Simple
4014cabal-version: >=1.10
4115extra-source-files:
16+ README.md
17+ changelog.md
4218 examples/example.hs
4319 examples/example_lens.hs
4420 bench/Main.hs
@@ -57,7 +33,6 @@ library
5733 Katip.Monadic
5834 Katip.Scribes.Handle
5935
60− -- other-modules:
6136 default-extensions:
6237 DeriveGeneric
6338 FlexibleContexts
katip/katip.jpgnew file

Binary file not shown.