72 Commits

Author SHA1 Message Date
Tom Pallister
05481f3af3
Feature/use any id server for admin area (#232)
* initial commits around using any id servers

* add your own id server for admin area

* lots of refactoring, now instead of injecting IWebHostBuilder we just set the Ocelot base url as a configuration extension method..this means people can pass it in on the command line aswell as hardcode which is OK I guess, also can now use your own IdentityServer to authenticate admin area

* updated docs for #231

* some tests that hopefully bump up coverage
2018-02-14 18:53:18 +00:00
Tom Pallister
6f177fbf5b
messing around (#230) 2018-02-13 23:00:41 +00:00
Tom Pallister
947a1450d0 updated docs for tracing 2018-02-13 14:23:23 +00:00
Tom Gardham-Pallister
7c62b55431 added tracing to some routes 2018-02-13 09:13:34 +00:00
Tom Pallister
98133d9473
Feature/expose http handlers (#224)
* temp commit

* trying to work out how to expose the http handlers in a decent way..

* pissing about at lunch

* changed to func so you can instanciate object or new it up each time

* docs for dele handlers

* upgraded to sdk 2.1.4

* some validation for consul services
2018-02-13 09:07:09 +00:00
geffzhang
ef3c4f614a Monitoring (#219)
* feat:  use Https://github.com/ButterflyAPM to monitor each API request monitoring metrics

* feat: using DiagnosticSource and Butterfly.OpenTracing

* refactor:refactor Ocelot tracing, merge code into OcelotDiagnosticListener

* refactor: move OcelotHttpTracingHandler to Requester

* fix: Requester\HttpClientBuilder.cs(10,14): error CS0234: The type or namespace name 'Tracing' does not exist in the namespace

* feat: add test should_set_up_tracing

* feat : Remove extraneous code

* feat: remove unused DiagnosticSource diagnostic

* fix : test UseTracing

* add test should_call_scoped_data_repository_QosProviderError

* add test should_return_any_errors

* add test HttpClientHttpRequesterTest

*  it should keep it can not be deleted
2018-02-12 18:33:23 +00:00
Tom Pallister
f690f287cb forgot this 2018-02-01 13:51:55 +00:00
Tom Pallister
3ac9b3bd87
hacked together load balancing reroutes in fileconfig (#211)
* hacked together load balancing reroutes in fileconfig

* some renaming and refactoring

* more renames

* hacked away the old config json

* test for issue 213

* renamed key

* dont share ports

* oops

* updated docs

* mvoed docs around

* port being used
2018-01-31 20:34:55 +00:00
Tom Pallister
6a20baeb97
Improving logging and request id (#189)
* hacking around to work out why logging and request id isnt working

* pass request id into logger so it can be structured, removed a bunch of debug logging we dont need because diagnostic trace gets it

* changed config dependency

* always have tracing available

* made it so we dont need to pass config into services.AddOcelot anymore with .net core 2.0

* add test

* lots of changes relating to logging and request ids, also updated documentation

* fixed failing test i missed
2018-01-06 16:39:05 +00:00
Tom Pallister
f082f7318a
Raft round 2 (#182)
* brought in rafty

* moved raft classes into Ocelot and deleted from int project

* started to set up rafty in Ocelot

* RAFTY INSIDE OCELOT...WOOT

* more work adding rafty...just need to get auth working now

* rudimentary authenticated raft requests working

* asyn await stuff

* hacked rafty into the fileconfigurationcontroller...everything seems to be working roughly but I have a lot of refactoring to do

* updated to latest rafty that doesnt need an id

* hacky but all tests passing

* changed admin area set up to use builder not configuration.json, changed admin area auth to use client credentials

* missing code coverage

* ignore raft sectionf for code coverage

* ignore raft sectionf for code coverage

* back to normal filters

* try exclude attr

* missed these

* moved client secret to builder for authentication and updated docs

* lock to try and fix error accessing identity server created temprsa file on build server

* updated postman scripts and changed Ocelot to not always use type handling as this looked crap when manually accessing the configuration endpoint

* added rafty docs

* changes I missed

* added serialisation code we need for rafty to process commands when they proxy to leader

* moved controllers into their feature slices
2018-01-01 18:40:39 +00:00
Tom Pallister
6289992faa
added Ocelot bulder to try and make adding Ocelot configuration more … (#159)
* added Ocelot bulder to try and make adding Ocelot configuration more idiomatic

* renamed tests
2017-11-22 07:07:59 +00:00
Tom Pallister
163150a1d7 seperate startups for tests...updated configuration.json for manual tests and tidied a few more things up 2017-11-01 16:21:35 +00:00
Tom Pallister
f4e8dcbdab everything working..now for the docs 2017-11-01 15:51:49 +00:00
Tom Gardham-Pallister
b23bbf56b9 all administration tests passing again...yey 2017-10-30 07:59:34 +00:00
Tom Gardham-Pallister
3f6f665f93 added cert to manual project for admin area testing 2017-10-29 19:22:25 +00:00
Tom Gardham-Pallister
b28fc6694e tidy up and no longer hard code admin area...still one int test failing before we start looking at rebuilding auth stuff 2017-10-29 16:35:12 +00:00
yuchen1030
ed94764420 Update Program.cs
Solving the problems that project cannot be run on IIS.
2017-10-26 20:11:14 +08:00
Tom Gardham-Pallister
09126911bd joy the admin area works with this commit 2017-10-25 08:06:41 +01:00
Tom Pallister
d8621d9046 miles away 2017-09-26 09:57:51 +01:00
Tom Pallister
6419919e74 unit tests pass... 2017-09-25 13:13:07 +01:00
Tom Pallister
1c98dcbca3 updated packages and project versions...12 errors! 2017-09-25 11:53:56 +01:00
TomPallister
cffb8b63d9 blasduihasd 2017-09-21 23:09:36 +01:00
TomPallister
c06b492b46 upgraded to netcoreapp2.0 2017-09-21 23:00:22 +01:00
TomPallister
09c9a25883 bit more tidying 2017-07-04 19:41:41 +01:00
Tom Gardham-Pallister
ab953f28fd realised the user can just set the region..delete time 2017-06-28 08:17:48 +01:00
TomPallister
26e7621798 fixed stupid double request bug from bad merge 2017-06-25 22:07:19 +01:00
TomPallister
4d3d3e1bc0 changes to get this going again 2017-06-25 21:46:59 +01:00
Juan Carlos Santana Herrera
24f7b9a171 UpstreamHttpMethod property (of class FileReRoute) changes from string to List<string>. 2017-05-05 11:47:28 +01:00
TomPallister
c3cd181b90 added a new implementation that stores the ocelot config in consul kv store, had to change some major things and add cache settings as default 2017-04-16 19:35:59 +01:00
Tom Pallister
f58da434ba Merge pull request #70 from MarcDenman/feature/updateLogging
Update logging
2017-03-19 15:57:28 +00:00
Marc Denman
34be5a2955 Update middelware to use logging extension methods 2017-03-18 18:33:51 +00:00
David Derman
a3b387aeb1 Renamed ScopeName to ApiName, ScopeSecret to ApiSecret, and
AdditionalScopes to Allowed Scoped in order to be more consistent with
Identity Server naming conventions.
2017-03-14 16:54:55 -04:00
TomPallister
c49a1c9004 removed a bunch of orig files checked in by accident 2017-03-09 17:00:51 +00:00
TomPallister
6f65d9bab0 upgraded to vs2017 2017-03-09 17:00:15 +00:00
TomPallister
c787202374 I realised we can get rid of the cookie container as cookies are just sent as a header called cookie... 2017-03-05 18:05:20 +00:00
TomPallister
d33e0c6f3b merged develop and stolen binarymash dont publish unstable build script code 2017-02-25 18:27:20 +00:00
Tom Gardham-Pallister
07c334cc98 moved stuff around so a bit less crap 2017-02-25 16:09:00 +00:00
Tom Gardham-Pallister
112a9c303e hacky auth working 2017-02-24 19:52:48 +00:00
Tom Gardham-Pallister
bd07af6926 more work towards getting identity server and admin area set up 2017-02-22 22:13:35 +00:00
Tom Gardham-Pallister
2dfdf0bb86 after much hacking unit tests passing 2017-02-21 07:34:47 +00:00
Philip Wood
3c9ad87b73 Fix cake on Mac. Also added compile-time support for OSX.10.12-x64. The acceptance tests still fail on this version of OS X, however, because of the funky stuff going on in TestConfiguration.cs. Fixing this is outside the scope of this issue. 2017-02-19 15:03:11 +00:00
Tom Gardham-Pallister
b98310c80d working ssl example 2017-02-17 18:24:32 +00:00
Tom Gardham-Pallister
159969483b hacking away 2017-02-13 18:51:47 +00:00
Tom Gardham-Pallister
95fc687e93 started messing around with admin area 2017-02-13 12:13:53 +00:00
Tom Gardham-Pallister
0b830d9891 mapped admin path works for manual test 2017-02-13 07:42:31 +00:00
geffzhang
2fa6e66dd4 refactor code 2017-02-13 08:29:29 +08:00
geffzhang
e1d5ef3aae implement Request Rate limit, this feature is options 2017-02-11 16:32:30 +08:00
geffzhang
caae826d77 Refactor qos as options 2017-02-08 09:25:32 +08:00
geffzhang
a895fdfc12 Merge branch 'develop' into CircuitBreakerPattern 2017-02-07 18:41:11 +08:00
TomPallister
7900aa3f49 got sidetracked and downgraded to .net core app 1.1 that actually exists no idea why i had 1.4 :( 2017-02-04 12:06:33 +00:00