{"push_id":3004589155,"size":14,"distinct_size":2,"ref":"refs/heads/feature/openidc-auth-flow","head":"8ba2408bef17e3b3d4d3997bdca473707d9b712b","before":"c81806e6fe67a261770ba0b8c971c417537d19e2","commits":[{"sha":"54912b03bdd205ab5ff812f24006040abce4d18b","author":{"name":"herojan","email":"28cbe5957722b744af2e94c23284fd24422abac0@users.noreply.github.com"},"message":"Fix introspection token key  (#811)\n\n* Fix introspection token key\r\n\r\n* Fix doc","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/54912b03bdd205ab5ff812f24006040abce4d18b"},{"sha":"b9566ce991842b11e21735af34d86b7ae647ef25","author":{"name":"Sandor Szücs","email":"f0c8058f71fcfe5afd63dc9873b61c5120cb7f65@zalando.de"},"message":"fix #808 and add dropRequestHeaders filter before the filters from the annotations applied by users (#812)\n\nSigned-off-by: Sandor Szuecs <sandor.szuecs@zalando.de>","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/b9566ce991842b11e21735af34d86b7ae647ef25"},{"sha":"cf18e8ec9d3d9897d562aff9c209c0ab4390e799","author":{"name":"Sandor Szücs","email":"f0c8058f71fcfe5afd63dc9873b61c5120cb7f65@zalando.de"},"message":"doc auditLog filter (#813)\n\n* doc for auditLog() filter, fixes #798\r\n\r\nSigned-off-by: Sandor Szuecs <sandor.szuecs@zalando.de>\r\n\r\n* fix comment\r\n\r\nSigned-off-by: Sandor Szücs <sandor.szuecs@zalando.de>","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/cf18e8ec9d3d9897d562aff9c209c0ab4390e799"},{"sha":"f38814926947a52294e405efae5a770bbda097c0","author":{"name":"Malte","email":"3ab64d2ca97a5f10d7f298961a0e3cb836e31339@users.noreply.github.com"},"message":" Add link to zalando tech blog (#815)","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/f38814926947a52294e405efae5a770bbda097c0"},{"sha":"de58660b39bbd1cfa9a5b91b416b4106cbff2979","author":{"name":"David Dufour-Boivin","email":"9b18e94b0a1939501c86252eb5e9f51f55e1c835@users.noreply.github.com"},"message":"add blank line to enable bullet-point lists in filters doc (#816)","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/de58660b39bbd1cfa9a5b91b416b4106cbff2979"},{"sha":"f17e7edbd9989aaadbb2d691e11d9d8f31d1fd47","author":{"name":"Malte","email":"3ab64d2ca97a5f10d7f298961a0e3cb836e31339@users.noreply.github.com"},"message":" #32 Check if file exists and log a warning (#668)\n\n*  #32 Add logrus logger and log warning in case wrong type is used.\r\n\r\n*  Implement check if the file exists\r\n\r\n*  Run format\r\n\r\n*  Return error and log it\r\n\r\n*  Change error message\r\n\r\n*  Change to implicit assignment\r\n\r\n*  Change log import, remove blank lines, drop else branch","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/f17e7edbd9989aaadbb2d691e11d9d8f31d1fd47"},{"sha":"7d1e7ba519fc513bae8a7ecb8a5faec398c24ef1","author":{"name":"Sandor Szücs","email":"f0c8058f71fcfe5afd63dc9873b61c5120cb7f65@zalando.de"},"message":"Swarm ratelimiter (#593)\n\n* communication between nodes using swim protocol via Hashicorp's memberlist\r\n* current swarm types: Kubernetes and Fake (testing purposes), these types are needed to find your initial peers.\r\n* implemented  use cases: `clusterRatelimit` and `clusterClientRatelimit`, that enable you to specify number of requests per `time.Duration` for a swarm of skipper instances, that can grow and shrink without interfering much with the ratelimit setting. \r\n\r\nWhy we do not use a central ratelimit service? Because you have to increment and query this service, for every request, that means you created the biggest central service that you rely on. This implementation shares the current data for every request and calculates locally the current state, which asynchronously gets updated in the not hot path of the request handling.  \r\n\r\nSigned-off-by: Sandor Szücs <sandor.szuecs@zalando.de>","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/7d1e7ba519fc513bae8a7ecb8a5faec398c24ef1"},{"sha":"62a03be1eeef3ce2bdeed7b3c58d50218cb88538","author":{"name":"Marcus Noble","email":"7d413b558fa136fcec4ce86f221ffba3a3ab0697@elsevier.com"},"message":"Fix links to predicates (#821)","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/62a03be1eeef3ce2bdeed7b3c58d50218cb88538"},{"sha":"e27579abe912bedb3638b12b53a88dfac2d1696e","author":{"name":"Julio Chana","email":"6105fa1813cc5de7a4a03dfd42876b94056a91f6@gmail.com"},"message":"Activate compatibility defaults on Prometheus metrics (#823)","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/e27579abe912bedb3638b12b53a88dfac2d1696e"},{"sha":"eb2db0bff226b4327704bc8068e41f5c81288bd2","author":{"name":"David Dufour-Boivin","email":"9b18e94b0a1939501c86252eb5e9f51f55e1c835@users.noreply.github.com"},"message":"fix typo retrieable -> retrievable (#826)\n\n* fix typo retrieable -> retrievable\r\n\r\n* fix doc","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/eb2db0bff226b4327704bc8068e41f5c81288bd2"},{"sha":"a0d2ed81f66c1dc2a6f003c138e93fd7f8327db6","author":{"name":"Andreas Håkansson","email":"0f68b1662b809f6b41417e39ec263c91d4bf5518@users.noreply.github.com"},"message":"Updated Docker section (#829)","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/a0d2ed81f66c1dc2a6f003c138e93fd7f8327db6"},{"sha":"d00a91248a6731b70e5896a4edeec48dcd20e0e4","author":{"name":"David Dufour-Boivin","email":"9b18e94b0a1939501c86252eb5e9f51f55e1c835@users.noreply.github.com"},"message":"API Monitoring Filter: MVP (#818)\n\n* WIP\r\n\r\n* WIP\r\n\r\n* push metrics to Prometheus\r\n\r\n* split into `monitoringFilterContext`\r\n\r\n* rename and re-organise filter apimonitoring\r\n\r\n* WIP\r\n\r\n* WIP\r\n\r\n* Use mocks + more tests\r\n\r\n* get rid of gomock + param for including paths in metrics key\r\n\r\n* make clean cleans cache and testcache\r\n\r\n* feature toggle + param IncludePath\r\n\r\n* Include Path by default: true\r\n\r\n* prefer SplitN to manual splitting\r\n\r\n* clean up modules\r\n\r\n* fix feature toggle + documentation\r\n\r\n* change CLI flag to `enable-apimonitoring`\r\n\r\n* make verbose logging of the `apimonitoring` filter parameterized\r\n\r\n* re-order the metrics key prefix + do not track non configured paths\r\n+ fix regexp (add ^ first and $ last)\r\n+ get rid of parameter `IncludePath`\r\n\r\n* support JSON configuration\r\n+ support :variable-path-parts\r\n+ application_id configurable per API\r\n\r\n* Rename `path-patters` to `path-template` + fix examples and doc\r\n\r\n* normalise path templates to `:id` (from `{id}`)\r\n\r\n* rename metrics\r\n\r\n* use metrics prefix + fix examples\r\n\r\n* simplify structure\r\n\r\n* rename/group files\r\n\r\n* flatten filter config to the minimum needed\r\n\r\n* better formatting of the filter context (in verbose logs)\r\n\r\n* Do not log cookies and Authorization headers\r\n\r\n* remove extra prefix\r\nmetrics from filters already have a prefix\r\n(here: `apimonitoring.custom.`)\r\n\r\n* rename series (200 to 2xx) + improve test coverage\r\n\r\n* fix assert.Equal parameter order\r\n\r\n* remove req/resp size metrics\r\n\r\n* lenient configuration parsing\r\n\r\n* provide configuration object schema\r\n\r\n* remove commented code\r\n\r\n* formatting + comments\r\n\r\n* rename vars/consts to follow exact parameter name\r\n\r\n* review GODOC and visibility of members\r\n\r\n* use log.Debugf instead of maintaining a Verbose parameter/config\r\n\r\n* go fmt\r\n\r\n* add API ID to configuration and metrics\r\n\r\n* track unknown endpoints\r\n\r\n* remove forgotten debug `Printf`\r\n\r\n* use non-MAC specific path in example\r\n\r\n* prefix flag symbols with `apiMonitoring`\r\n\r\n* rename filter to `apiUsageMonitoring`\r\n\r\n* fix debug logging issues\r\n\r\n* accept multiple JSON args vs 1 global\r\n+ list metrics in documentation\r\n+ total lenient argument parsing\r\n\r\n* remove duplicate example\r\n\r\n* remove size related information keeping (unused)\r\n+ fix filter_test\r\n\r\n* use array instead of explicit switch/case for HTTP status code metrics\r\n\r\n* WIP\r\n\r\n* cache rendered metric names\r\n+ no debug log in `Request` + only one in `Response`\r\n+ multiple run of the filter test to ensure caching works\r\n\r\n* reduce file clutter\r\n\r\n* no-op logic if feature no enabled\r\n\r\n* allow `nil` filter to be returned by `CreateFilter`\r\n\r\n* fix help and documentation\r\n\r\n* fix doc\r\n\r\n* simplify `Request` time information gathering\r\n\r\n* use fixed size array vs map (or slice) to avoid thread sync\r\n\r\n* go fmt\r\n\r\n* create empty filter on conf empty/fail & track as unknown\r\n+ get rid of unused code around req/resp body size\r\n\r\n* rename metricsName into metricNames\r\n\r\n* refine documentation\r\n\r\n* use %v instead of %s to format errors\r\n\r\n* apply lowercase file namign to pathInfo.go\r\n\r\n* apiUsageMonitoringSpec.Enabled should not be exported\r\n\r\n* shorter check if map key exists\r\n\r\n* remove early optimization + check for filter nil in Proxy.applyFiltersToRequest\r\n\r\n* fmt\r\n\r\n* use Error instead of Warn in logging abnormal behaviour\r\n\r\n* test nil filter behaviour\r\n\r\n* make fmt\r\n\r\n* drop test `init` block\r\n\r\n* restore non-nil CreateFilter + use noopFilter\r\n\r\n* fmt\r\n\r\n* restoring low coupling in metrics/metrics.go","distinct":false,"url":"https://api.github.com/repos/zalando/skipper/commits/d00a91248a6731b70e5896a4edeec48dcd20e0e4"},{"sha":"fee0dcf980612147433dc91223ff96601799fc0b","author":{"name":"Arjun Naik","email":"5e82aab4041ad6df455d340e8de44234e9e4f827@zalando.de"},"message":"Added encryption for cookies","distinct":true,"url":"https://api.github.com/repos/zalando/skipper/commits/fee0dcf980612147433dc91223ff96601799fc0b"},{"sha":"8ba2408bef17e3b3d4d3997bdca473707d9b712b","author":{"name":"Arjun Naik","email":"5e82aab4041ad6df455d340e8de44234e9e4f827@zalando.de"},"message":"Merge branch 'master' of github.com:zalando/skipper into feature/openidc-auth-flow\n\nSigned-off-by: Arjun Naik <arjun.naik@zalando.de>","distinct":true,"url":"https://api.github.com/repos/zalando/skipper/commits/8ba2408bef17e3b3d4d3997bdca473707d9b712b"}]}
{"actor":{"display_login":"arjunrn"}}