Skip to content

Commit

Permalink
Refactor exporters into ext packages (#550)
Browse files Browse the repository at this point in the history
* refactor exporters into ext packages

* fix doc and system test

* fix system test
  • Loading branch information
reyang authored Mar 11, 2019
1 parent 724bd0b commit e7d4524
Show file tree
Hide file tree
Showing 48 changed files with 382 additions and 105 deletions.
4 changes: 2 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ This example shows how to report the traces to Stackdriver Trace:

.. code:: python
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.ext.stackdriver import trace_exporter as stackdriver_exporter
from opencensus.trace import tracer as tracer_module
exporter = stackdriver_exporter.StackdriverExporter(
Expand All @@ -166,7 +166,7 @@ This example shows how to configure OpenCensus to use a background thread:
.. code:: python
from opencensus.common.transports.async_ import AsyncTransport
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.ext.stackdriver import trace_exporter as stackdriver_exporter
from opencensus.trace import tracer as tracer_module
exporter = stackdriver_exporter.StackdriverExporter(
Expand Down
2 changes: 1 addition & 1 deletion contrib/opencensus-ext-django/examples/app/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
'SAMPLER':
'opencensus.trace.samplers.always_on.AlwaysOnSampler',
'EXPORTER':
'opencensus.trace.exporters.stackdriver_exporter.StackdriverExporter',
'opencensus.ext.stackdriver.trace_exporter.StackdriverExporter',
'PROPAGATOR':
'opencensus.trace.propagation.google_cloud_format.'
'GoogleCloudFormatPropagator',
Expand Down
16 changes: 8 additions & 8 deletions contrib/opencensus-ext-django/tests/test_django_middleware.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@
from django.test.utils import teardown_test_environment

from opencensus.common.transports import sync
from opencensus.ext.ocagent import trace_exporter
from opencensus.ext.jaeger import trace_exporter as jaeger_exporter
from opencensus.ext.ocagent import trace_exporter as ocagent_exporter
from opencensus.ext.zipkin import trace_exporter as zipkin_exporter
from opencensus.trace import execution_context
from opencensus.trace import span as span_module
from opencensus.trace import utils
from opencensus.trace.exporters import print_exporter
from opencensus.trace.exporters import zipkin_exporter
from opencensus.trace.exporters import jaeger_exporter
from opencensus.trace.propagation import google_cloud_format
from opencensus.trace.samplers import always_on
from opencensus.trace.samplers import probability
Expand Down Expand Up @@ -216,7 +216,7 @@ def test_constructor_ocagent_trace_exporter(self):

patch_ocagent_trace = mock.patch(
'opencensus.ext.django.config.settings.EXPORTER',
trace_exporter.TraceExporter)
ocagent_exporter.TraceExporter)

patch_params = mock.patch(
'opencensus.ext.django.config.settings.params',
Expand All @@ -227,14 +227,14 @@ def test_constructor_ocagent_trace_exporter(self):

self.assertIs(middleware._sampler, always_on.AlwaysOnSampler)
self.assertIs(
middleware._exporter, trace_exporter.TraceExporter)
middleware._exporter, ocagent_exporter.TraceExporter)
self.assertIs(
middleware._propagator,
google_cloud_format.GoogleCloudFormatPropagator)

assert isinstance(middleware.sampler, always_on.AlwaysOnSampler)
assert isinstance(
middleware.exporter, trace_exporter.TraceExporter)
middleware.exporter, ocagent_exporter.TraceExporter)
assert isinstance(
middleware.propagator,
google_cloud_format.GoogleCloudFormatPropagator)
Expand All @@ -254,7 +254,7 @@ def test_constructor_ocagent_trace_exporter_default_endpoint(self):

patch_ocagent_trace = mock.patch(
'opencensus.ext.django.config.settings.EXPORTER',
trace_exporter.TraceExporter)
ocagent_exporter.TraceExporter)

patch_params = mock.patch(
'opencensus.ext.django.config.settings.params',
Expand All @@ -265,7 +265,7 @@ def test_constructor_ocagent_trace_exporter_default_endpoint(self):

self.assertEqual(middleware.exporter.service_name, service_name)
self.assertEqual(middleware.exporter.endpoint,
trace_exporter.DEFAULT_ENDPOINT)
ocagent_exporter.DEFAULT_ENDPOINT)

def test_constructor_probability_sampler(self):
from opencensus.ext.django import middleware
Expand Down
6 changes: 3 additions & 3 deletions contrib/opencensus-ext-flask/examples/custom.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@

import hello_world_pb2
import hello_world_pb2_grpc
from opencensus.ext.flask.flask_middleware import FlaskMiddleware
from opencensus.ext.grpc import client_interceptor
from opencensus.ext.stackdriver import trace_exporter as stackdriver_exporter
from opencensus.trace import config_integration
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.trace.ext.flask.flask_middleware import FlaskMiddleware
from opencensus.trace.ext.grpc import client_interceptor
from opencensus.trace.samplers import probability

INTEGRATIONS = ['mysql', 'postgresql', 'sqlalchemy', 'requests']
Expand Down
18 changes: 9 additions & 9 deletions contrib/opencensus-ext-flask/tests/test_flask_middleware.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,17 @@
import mock

from opencensus.ext.flask import flask_middleware
from opencensus.ext.ocagent import trace_exporter
from opencensus.ext.jaeger import trace_exporter as jaeger_exporter
from opencensus.ext.ocagent import trace_exporter as ocagent_exporter
from opencensus.ext.stackdriver import trace_exporter as stackdriver_exporter
from opencensus.ext.zipkin import trace_exporter as zipkin_exporter
from opencensus.trace import execution_context
from opencensus.trace import span as span_module
from opencensus.trace import span_data
from opencensus.trace import stack_trace
from opencensus.trace import status
from opencensus.trace.blank_span import BlankSpan
from opencensus.trace.exporters import jaeger_exporter
from opencensus.trace.exporters import print_exporter
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.trace.exporters import zipkin_exporter
from opencensus.trace.propagation import google_cloud_format
from opencensus.trace.samplers import always_off, always_on, ProbabilitySampler
from opencensus.trace.span_context import SpanContext
Expand Down Expand Up @@ -240,7 +240,7 @@ def test_init_app_config_ocagent_trace_exporter(self):
app.config = {
'OPENCENSUS_TRACE': {
'SAMPLER': ProbabilitySampler,
'EXPORTER': trace_exporter.TraceExporter,
'EXPORTER': ocagent_exporter.TraceExporter,
'PROPAGATOR': google_cloud_format.GoogleCloudFormatPropagator,
},
'OPENCENSUS_TRACE_PARAMS': {
Expand All @@ -254,7 +254,7 @@ def test_init_app_config_ocagent_trace_exporter(self):

self.assertIs(middleware.app, app)
assert isinstance(
middleware.exporter, trace_exporter.TraceExporter)
middleware.exporter, ocagent_exporter.TraceExporter)
self.assertEqual(middleware.exporter.service_name, 'foo')
self.assertEqual(middleware.exporter.endpoint, 'localhost:50001')

Expand All @@ -266,7 +266,7 @@ def test_init_app_config_ocagent_trace_exporter_default_endpoint(self):
app.config = {
'OPENCENSUS_TRACE': {
'SAMPLER': ProbabilitySampler,
'EXPORTER': trace_exporter.TraceExporter,
'EXPORTER': ocagent_exporter.TraceExporter,
'PROPAGATOR': google_cloud_format.GoogleCloudFormatPropagator,
},
'OPENCENSUS_TRACE_PARAMS': {
Expand All @@ -279,10 +279,10 @@ def test_init_app_config_ocagent_trace_exporter_default_endpoint(self):

self.assertIs(middleware.app, app)
assert isinstance(
middleware.exporter, trace_exporter.TraceExporter)
middleware.exporter, ocagent_exporter.TraceExporter)
self.assertEqual(middleware.exporter.service_name, 'foo')
self.assertEqual(middleware.exporter.endpoint,
trace_exporter.DEFAULT_ENDPOINT)
ocagent_exporter.DEFAULT_ENDPOINT)

self.assertTrue(app.before_request.called)
self.assertTrue(app.after_request.called)
Expand Down
4 changes: 2 additions & 2 deletions contrib/opencensus-ext-grpc/examples/hello_world_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
import hello_world_pb2_grpc

from opencensus.trace.tracer import Tracer
from opencensus.trace.exporters import stackdriver_exporter
from opencensus.trace.ext.grpc import client_interceptor
from opencensus.ext.grpc import client_interceptor
from opencensus.ext.stackdriver import trace_exporter as stackdriver_exporter

HOST_PORT = 'localhost:50051'

Expand Down
4 changes: 2 additions & 2 deletions contrib/opencensus-ext-grpc/examples/hello_world_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
import hello_world_pb2
import hello_world_pb2_grpc

from opencensus.trace.ext.grpc import server_interceptor
from opencensus.ext.grpc import server_interceptor
from opencensus.ext.stackdriver import trace_exporter as stackdriver_exporter
from opencensus.trace.samplers import always_on
from opencensus.trace.exporters import stackdriver_exporter

_ONE_DAY_IN_SECONDS = 60 * 60 * 24

Expand Down
5 changes: 5 additions & 0 deletions contrib/opencensus-ext-jaeger/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Changelog

## Unreleased

- Initial version.
16 changes: 16 additions & 0 deletions contrib/opencensus-ext-jaeger/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
OpenCensus Jaeger Exporter
============================================================================

Installation
------------

::

pip install opencensus-ext-jaeger

Usage
-----

.. code:: python
# TBD
1 change: 1 addition & 0 deletions contrib/opencensus-ext-jaeger/opencensus/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__path__ = __import__('pkgutil').extend_path(__path__, __name__)
1 change: 1 addition & 0 deletions contrib/opencensus-ext-jaeger/opencensus/ext/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__path__ = __import__('pkgutil').extend_path(__path__, __name__)
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__path__ = __import__('pkgutil').extend_path(__path__, __name__)
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@

from opencensus.common.transports import sync
from opencensus.common.utils import timestamp_to_microseconds
from opencensus.ext.jaeger.trace_exporter.gen.jaeger import agent, jaeger
from opencensus.trace import link as link_module
from opencensus.trace.exporters import base
from opencensus.trace.exporters.gen.jaeger import agent, jaeger

DEFAULT_HOST_NAME = 'localhost'
DEFAULT_AGENT_PORT = 6831
Expand Down
File renamed without changes.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions contrib/opencensus-ext-jaeger/setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[bdist_wheel]
universal = 1
50 changes: 50 additions & 0 deletions contrib/opencensus-ext-jaeger/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Copyright 2019, OpenCensus Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

from setuptools import find_packages
from setuptools import setup
from version import __version__

setup(
name='opencensus-ext-jaeger',
version=__version__, # noqa
author='OpenCensus Authors',
author_email='[email protected]',
classifiers=[
'Intended Audience :: Developers',
'Development Status :: 3 - Alpha',
'Intended Audience :: Developers',
'License :: OSI Approved :: Apache Software License',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
],
description='OpenCensus Jaeger Trace Exporter',
include_package_data=True,
long_description=open('README.rst').read(),
install_requires=[
'opencensus >= 0.2.dev0, < 1.0.0',
],
extras_require={},
license='Apache-2.0',
packages=find_packages(exclude=('tests',)),
namespace_packages=[],
url='https://github.com/census-instrumentation/opencensus-python/tree/master/contrib/opencensus-ext-jaeger',
zip_safe=False,
)
Loading

0 comments on commit e7d4524

Please sign in to comment.