
# [TII TLS 1.3 log and test features](./)

Capture [TII TLS 1.3](https://tls13.io) <u>logs</u> and make them usefull to trace and <u>test</u> protocol developments and contexts

Provide TII TLS 1.3](https://tls13.io) negotiating protocol logs, store, make them availables to be downloaded and navigate via browsers and command line requests against different test contextsi and services

<img style=margin: 1em 0em;border: 0 width=250 alt=DocServer src=images/tii_tls_logs_tests.svg?sanitize=true>


> [!CAUTION]
> Code belongs to TII CRC 
 
 ## Features

[TII TLS 1.3 features- <u>logs</u> and <u>tests</u>](./) services and infrastructure to make them usefull in trace, diagnosis, researchs, etc.

- **Transparent mode. Do not disturb too much**: use <u>Rust logs and trace crates</u>, **redefine** logs on the fly for contexts (secure and quiet modes)
- **Capture TLS negotiation. Even when one is not allowed to be in**: via developed <u>log wrappers and libraries </u> with conditional definitions for several existing <u>log crates</u>
- **Handling logs info ... suddenly an overwhelming quantity of infos**: handling different formats, categories and sources
- **Collecting and parsing** to allow <u>friendly use and output format</u>. Establish a taxonomy, structures and methods
- **Navigate among categories**: INFO, DEBUG, TRACE, ERROR, WARN. A search mechanism and some kind of filtering
- Log can for each request can have several hundreds of lines, some kind of **compression** is need for saving and sending and some kind of **autoclean**
- **Trusted procedures to deliver logs** with authorization, policies and permissions <u>without authentication users</u>
- **Share Source Libraries for Servers, Client and Processes**. Keep one's head healty and in place
- **Server** to listen **http** and **command-line** requests and to connect with **TLS servers**
- **Sharing settings** for all actors around logs. **Extending Settings** to be shared, reused and for validation and definitions
- **Log client for friendly log use and consume**. A <u>Wasm</u> client was created for browser and cli tools, under same <u>Rust codebase</u>
- **Allow use for common standards** like: curl, wget, openssl. Easy copy & paste command or descriptions with examples
- **Use templating subsystem** to share response and customize them for different clients and context
- **Test Challenge**. A final destination when everything seems to fail
- **Test mechanism** to collect logs even when everything in **TLS negotiation** fails
- **Test different context and client** against different settings and cominations
- **Customizable Services**: resources, primitives, settings, modules, text languages, etc
- **Create and support AWS infastructure** for all public Services using declarative mode and <u>CD/CI</u> in a Kubernetes cluster
- **Create automation procedures and tools** for develop and production toolchain around private git respositories
- **Design and Develop website for <a href='https://tls13.io'>TII TLS 1.3</a> project as a personalized experince (ask permissions, save choices, sessions-ids, etc)
- **Events tracking and trace** to understand how services are used, what is used and where to improve
- **Documentation service** by using <u>Rust mdbook</u> and link <u>code documention</u> in logs viewer in browser UI


##  Logs Request 

<video src="cap/tls_test_openssl.webm" width="600" height="300"
/></video>

