Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Opentracing Documentation #5703

Merged
merged 9 commits into from Jul 22, 2019

Conversation

@JorikSchellekens
Copy link
Contributor

commented Jul 17, 2019

Adds documentation for how OpenTracing should be configured by users and used by developers.

@JorikSchellekens JorikSchellekens requested a review from matrix-org/synapse-core Jul 17, 2019

@codecov

This comment has been minimized.

Copy link

commented Jul 17, 2019

Codecov Report

Merging #5703 into release-v1.2.0 will decrease coverage by 0.4%.
The diff coverage is 100%.

@@                Coverage Diff                 @@
##           release-v1.2.0    #5703      +/-   ##
==================================================
- Coverage           63.44%   63.03%   -0.41%     
==================================================
  Files                 331      331              
  Lines               36292    36293       +1     
  Branches             5990     5990              
==================================================
- Hits                23025    22877     -148     
- Misses              11628    11754     +126     
- Partials             1639     1662      +23

@richvdh richvdh added this to In progress in Homeserver Task Board via automation Jul 18, 2019

@JorikSchellekens JorikSchellekens force-pushed the joriks/opentracing_utils branch from 23fa9ed to 3a09218 Jul 18, 2019

@richvdh
Copy link
Member

left a comment

@JorikSchellekens sorry that the below is a bit of a long list - this is a really great start!

I think it would be best to remove the code refactoring from here for now and turn this into a documentation-only PR; we can look a the code changes separately, later on?

docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
@JorikSchellekens

This comment has been minimized.

Copy link
Contributor Author

commented Jul 19, 2019

@richvdh splitting the refactoring from the documentation does make sense. The documentation refers to a set of functions only introduced in this pr however which would make the documentation inconsistent if it gets into the release.

@richvdh

This comment has been minimized.

Copy link
Member

commented Jul 19, 2019

most of it doesn't seem to?

docs/opentracing.rst Outdated Show resolved Hide resolved

@JorikSchellekens JorikSchellekens force-pushed the joriks/opentracing_utils branch from 8baeadd to 1345ac8 Jul 19, 2019

@JorikSchellekens

This comment has been minimized.

Copy link
Contributor Author

commented Jul 19, 2019

The examples use decorators only introduced in this pr. I don't think it would be a great evil if they momentarily get out of sync. Also, I think the code review could be done before the release.

JorikSchellekens added some commits Jul 19, 2019

Doc cleanup
These are all alterations as a result of comments in #5703, it
includes mostly typos and clarifications. The most interesting
changes are:

- Split developer and user docs into two sections
- Add a high level description of OpenTracing

@JorikSchellekens JorikSchellekens changed the title Opentracing usability Opentracing Documentation Jul 19, 2019

@JorikSchellekens JorikSchellekens requested a review from richvdh Jul 19, 2019

@richvdh richvdh changed the base branch from develop to release-v1.2.0 Jul 19, 2019

@richvdh
Copy link
Member

left a comment

this is awesome. I've picked a few nits below, but they are all pretty trivial. Suggest you fix them up and merge. Please remember to squash-merge, as the commit history doesn't make much sense.

I've changed the base for the PR to the release branch, so that we can pull this into the release.

Thanks for taking the time to make this great :)

docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
docs/opentracing.rst Outdated Show resolved Hide resolved
synapse/config/tracer.py Show resolved Hide resolved
synapse/logging/opentracing.py Outdated Show resolved Hide resolved
synapse/logging/opentracing.py Outdated Show resolved Hide resolved
synapse/logging/opentracing.py Outdated Show resolved Hide resolved
synapse/logging/opentracing.py Outdated Show resolved Hide resolved
Apply suggestions from code review
Mostly just rewording parts of the docs for clarity.

Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

@JorikSchellekens JorikSchellekens force-pushed the joriks/opentracing_utils branch from 7fa4d1b to 15ff12e Jul 22, 2019

@JorikSchellekens

This comment has been minimized.

Copy link
Contributor Author

commented Jul 22, 2019

This PR doesn't contain any working code so how can these tests be failing?

@erikjohnston

This comment has been minimized.

Copy link
Member

commented Jul 22, 2019

Seems to be this test, which is presumably now flakey :/

If remote user leaves room we no longer receive device updates

@JorikSchellekens JorikSchellekens merged commit 826e6ec into release-v1.2.0 Jul 22, 2019

19 checks passed

buildkite/synapse Build #2965 passed (26 minutes, 55 seconds)
Details
buildkite/synapse/check-sample-config Passed (1 minute, 19 seconds)
Details
buildkite/synapse/check-style Passed (1 minute, 15 seconds)
Details
buildkite/synapse/isort Passed (21 seconds)
Details
buildkite/synapse/newspaper-newsfile Passed (17 seconds)
Details
buildkite/synapse/packaging Passed (20 seconds)
Details
buildkite/synapse/pipeline Passed (8 seconds)
Details
buildkite/synapse/python-3-dot-5-slash-postgres-9-dot-5 Passed (19 minutes, 9 seconds)
Details
buildkite/synapse/python-3-dot-5-slash-sqlite Passed (4 minutes, 45 seconds)
Details
buildkite/synapse/python-3-dot-5-slash-sqlite-slash-old-deps Passed (6 minutes, 1 second)
Details
buildkite/synapse/python-3-dot-6-slash-sqlite Passed (4 minutes, 26 seconds)
Details
buildkite/synapse/python-3-dot-7-slash-postgres-11 Passed (18 minutes, 46 seconds)
Details
buildkite/synapse/python-3-dot-7-slash-postgres-9-dot-5 Passed (19 minutes, 13 seconds)
Details
buildkite/synapse/python-3-dot-7-slash-sqlite Passed (4 minutes, 27 seconds)
Details
buildkite/synapse/sytest-python-3-dot-5-slash-postgres-9-dot-6-slash-monolith Passed (5 minutes, 13 seconds)
Details
buildkite/synapse/sytest-python-3-dot-5-slash-postgres-9-dot-6-slash-workers Soft failed (exit status 1)
Details
buildkite/synapse/sytest-python-3-dot-5-slash-sqlite-slash-monolith Passed (5 minutes, 8 seconds)
Details
codecov/patch 100% of diff hit (target 0%)
Details
codecov/project 63.45% (target 0%)
Details

Homeserver Task Board automation moved this from In progress to Done Jul 22, 2019

@richvdh

This comment has been minimized.

Copy link
Member

commented Jul 22, 2019

Seems to be this test, which is presumably now flakey :/

If remote user leaves room we no longer receive device updates

That one's been flaky for a while...

anoadragon453 added a commit that referenced this pull request Jul 22, 2019

Merge tag 'v1.2.0rc1' into develop
v1.2.0rc1

Features
--------

- Add support for opentracing. ([\#5544](#5544), [\#5712](#5712))
- Add ability to pull all locally stored events out of synapse that a particular user can see. ([\#5589](#5589))
- Add a basic admin command app to allow server operators to run Synapse admin commands separately from the main production instance. ([\#5597](#5597))
- Add `sender` and `origin_server_ts` fields to `m.replace`. ([\#5613](#5613))
- Add default push rule to ignore reactions. ([\#5623](#5623))
- Include the original event when asking for its relations. ([\#5626](#5626))
- Implement `session_lifetime` configuration option, after which access tokens will expire. ([\#5660](#5660))
- Return "This account has been deactivated" when a deactivated user tries to login. ([\#5674](#5674))
- Enable aggregations support by default ([\#5714](#5714))

Bugfixes
--------

- Fix 'utime went backwards' errors on daemonization. ([\#5609](#5609))
- Various minor fixes to the federation request rate limiter. ([\#5621](#5621))
- Forbid viewing relations on an event once it has been redacted. ([\#5629](#5629))
- Fix requests to the `/store_invite` endpoint of identity servers being sent in the wrong format. ([\#5638](#5638))
- Fix newly-registered users not being able to lookup their own profile without joining a room. ([\#5644](#5644))
- Fix bug in #5626 that prevented the original_event field from actually having the contents of the original event in a call to `/relations`. ([\#5654](#5654))
- Fix 3PID bind requests being sent to identity servers as `application/x-form-www-urlencoded` data, which is deprecated. ([\#5658](#5658))
- Fix some problems with authenticating redactions in recent room versions. ([\#5699](#5699), [\#5700](#5700), [\#5707](#5707))
- Ignore redactions of m.room.create events. ([\#5701](#5701))

Updates to the Docker image
---------------------------

- Base Docker image on a newer Alpine Linux version (3.8 -> 3.10). ([\#5619](#5619))
- Add missing space in default logging file format generated by the Docker image. ([\#5620](#5620))

Improved Documentation
----------------------

- Add information about nginx normalisation to reverse_proxy.rst. Contributed by @skalarproduktraum - thanks! ([\#5397](#5397))
- --no-pep517 should be --no-use-pep517 in the documentation to setup the development environment. ([\#5651](#5651))
- Improvements to Postgres setup instructions. Contributed by @Lrizika - thanks! ([\#5661](#5661))
- Minor tweaks to postgres documentation. ([\#5675](#5675))

Deprecations and Removals
-------------------------

- Remove support for the `invite_3pid_guest` configuration setting. ([\#5625](#5625))

Internal Changes
----------------

- Move logging code out of `synapse.util` and into `synapse.logging`. ([\#5606](#5606), [\#5617](#5617))
- Add a blacklist file to the repo to blacklist certain sytests from failing CI. ([\#5611](#5611))
- Make runtime errors surrounding password reset emails much clearer. ([\#5616](#5616))
- Remove dead code for persiting outgoing federation transactions. ([\#5622](#5622))
- Add `lint.sh` to the scripts-dev folder which will run all linting steps required by CI. ([\#5627](#5627))
- Move RegistrationHandler.get_or_create_user to test code. ([\#5628](#5628))
- Add some more common python virtual-environment paths to the black exclusion list. ([\#5630](#5630))
- Some counter metrics exposed over Prometheus have been renamed, with the old names preserved for backwards compatibility and deprecated. See `docs/metrics-howto.rst` for details. ([\#5636](#5636))
- Unblacklist some user_directory sytests. ([\#5637](#5637))
- Factor out some redundant code in the login implementation. ([\#5639](#5639))
- Update ModuleApi to avoid register(generate_token=True). ([\#5640](#5640))
- Remove access-token support from `RegistrationHandler.register`, and rename it. ([\#5641](#5641))
- Remove access-token support from `RegistrationStore.register`, and rename it. ([\#5642](#5642))
- Improve logging for auto-join when a new user is created. ([\#5643](#5643))
- Remove unused and unnecessary check for FederationDeniedError in _exception_to_failure. ([\#5645](#5645))
- Fix a small typo in a code comment. ([\#5655](#5655))
- Clean up exception handling around client access tokens. ([\#5656](#5656))
- Add a mechanism for per-test homeserver configuration in the unit tests. ([\#5657](#5657))
- Inline issue_access_token. ([\#5659](#5659))
- Update the sytest BuildKite configuration to checkout Synapse in `/src`. ([\#5664](#5664))
- Add a `docker` type to the towncrier configuration. ([\#5673](#5673))
- Convert `synapse.federation.transport.server` to `async`. Might improve some stack traces. ([\#5689](#5689))
- Documentation for opentracing. ([\#5703](#5703))

@JorikSchellekens JorikSchellekens deleted the joriks/opentracing_utils branch Jul 23, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
3 participants
You can’t perform that action at this time.