<commit_before>graphite_aclproxy
=================

The goal of this project is to create a rather simple proxy to enforce ACLs on metrics a given host (user, ....) is allowed to access. It uses the graphite-web grammer to parse targets and extract metric names.

So far only the render API and IP based acls are implemented. So if your project is using /render/ from your graphite-web Serve ronly, the proxy should work instantly by pointing your client to the proxy URL instead of the graphite-web server.

The project is ALPHA software, but works for me. Comments, bug reports and wishes are welcome!

TODOS:
=================

  * Implement user based acls
  * add support for various /metric/ requests
  * add some documentation, better coding style, .....
  * add caching<commit_msg>QC badge + readne update<commit_after>graphite_aclproxy
=================

[![Code Issues](https://www.quantifiedcode.com/api/v1/project/be18678e9d5b4c1f8325e0b4dcc262b6/badge.svg)](https://www.quantifiedcode.com/app/project/be18678e9d5b4c1f8325e0b4dcc262b6)


The goal of this project is to create a rather simple proxy to enforce ACLs on metrics a given host (user, ....) is allowed to access. It uses the graphite-web grammer to parse targets and extract metric names.

So far only the /render/ + /metrics/find and IP based acls are implemented. So if your project is using /render/ from your graphite-web Serve ronly, the proxy should work instantly by pointing your client to the proxy URL instead of the graphite-web server.

The project is BETA software, but works for me. Comments, bug reports and wishes are welcome!

TODOS:
=================

  * Implement user based acls
  * add support for various /metric/ requests
  * add some documentation, better coding style, .....
  * add caching
{'fraction_non_alphanumeric': 0.09955257270693513, 'fraction_numerical': 0.02181208053691275, 'mean_word_length': 4.215743440233236, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2290682', 'n_tokens_mistral': 518, 'n_tokens_neox': 476, 'n_words': 234}