Skip to content

Commit

Permalink
Remove Infobip references in notebooks (#10)
Browse files Browse the repository at this point in the history
* Remove Infobip references in notebooks

* polishing

* polishing

Co-authored-by: Tvrtko Sternak <[email protected]>
  • Loading branch information
sternakt and sternakt authored Dec 5, 2022
1 parent f960f38 commit b34a37d
Show file tree
Hide file tree
Showing 9 changed files with 337 additions and 729 deletions.
113 changes: 111 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,116 @@ pip install fast_kafka_api
Fill me in please! Don’t forget code examples:

``` python
1 + 1
from os import environ

title = "Example for FastKafkaAPI"
description = "A simple example on how to use FastKafkaAPI"
version = "0.0.1"
openapi_url = "/openapi.json"
favicon_url = "/assets/images/favicon.ico"

contact = dict(name="airt.ai", url="https://airt.ai", email="[email protected]")

kafka_brokers = {
"localhost": {
"url": "kafka",
"description": "local development kafka",
"port": 9092,
},
"staging": {
"url": "kafka.staging.acme.com",
"description": "staging kafka",
"port": 9092,
"protocol": "kafka-secure",
"security": {"type": "plain"},
},
"production": {
"url": "kafka.acme.com",
"description": "production kafka",
"port": 9092,
"protocol": "kafka-secure",
"security": {"type": "plain"},
},
}

kafka_server_url = "kafka"
kafka_server_port = "9092"

kafka_config = {
"bootstrap.servers": f"{kafka_server_url}:{kafka_server_port}",
"group.id": f"{kafka_server_url}:{kafka_server_port}_group",
"auto.offset.reset": "earliest",
}
if "KAFKA_API_KEY" in environ:
kafka_config = {
**kafka_config,
**{
"security.protocol": "SASL_SSL",
"sasl.mechanisms": "PLAIN",
"sasl.username": environ["KAFKA_API_KEY"],
"sasl.password": environ["KAFKA_API_SECRET"],
},
}

app = FastKafkaAPI(
title=title,
contact=contact,
kafka_brokers=kafka_brokers,
kafka_config=kafka_config,
description=description,
version=version,
docs_url=None,
redoc_url=None,
)
```

2
``` python
from typing import *
from datetime import datetime
from fast_kafka_api.application import KafkaMessage
from pydantic import NonNegativeInt, Field

class EventData(KafkaMessage):
definition_id: str = Field(
...,
example="appLaunch",
description="name of the event",
min_length=1,
)
occurred_time: datetime = Field(
...,
example="2021-03-28T00:34:08",
description="local time of the event",
)
user_id: NonNegativeInt = Field(
..., example=12345678, description="ID of a person"
)

class TrainingDataStatus(KafkaMessage):
no_of_records: NonNegativeInt = Field(
...,
example=12_345,
description="number of records (rows) ingested",
)
total_no_of_records: NonNegativeInt = Field(
...,
example=1_000_000,
description="total number of records (rows) to be ingested",
)

_total_no_of_records = 0
_no_of_records_received = 0

@app.consumes("training_data") # type: ignore
async def on_training_data(msg: EventData, produce: Callable[[str, TrainingDataStatus], None]) -> None:
global _total_no_of_records
global _no_of_records_received
_no_of_records_received = _no_of_records_received + 1

if _no_of_records_received % 100 == 0:
training_data_status = TrainingDataStatus(
no_of_records=_no_of_records_received,
total_no_of_records=_total_no_of_records,
)
produce(topic="training_data_status", msg=training_data_status)
```
14 changes: 0 additions & 14 deletions fast_kafka_api/_modidx.py
Original file line number Diff line number Diff line change
Expand Up @@ -119,24 +119,10 @@
'fast_kafka_api/confluent_kafka.py'),
'fast_kafka_api.confluent_kafka.create_testing_topic': ( 'confluentkafka.html#create_testing_topic',
'fast_kafka_api/confluent_kafka.py')},
'fast_kafka_api.core': {'fast_kafka_api.core.foo': ('core.html#foo', 'fast_kafka_api/core.py')},
'fast_kafka_api.logger': { 'fast_kafka_api.logger.get_default_logger_configuration': ( 'logger.html#get_default_logger_configuration',
'fast_kafka_api/logger.py'),
'fast_kafka_api.logger.get_logger': ('logger.html#get_logger', 'fast_kafka_api/logger.py'),
'fast_kafka_api.logger.set_level': ('logger.html#set_level', 'fast_kafka_api/logger.py'),
'fast_kafka_api.logger.supress_timestamps': ( 'logger.html#supress_timestamps',
'fast_kafka_api/logger.py')},
'fast_kafka_api.server': { 'fast_kafka_api.server.EventData': ('test_service.html#eventdata', 'fast_kafka_api/server.py'),
'fast_kafka_api.server.ModelMetrics': ('test_service.html#modelmetrics', 'fast_kafka_api/server.py'),
'fast_kafka_api.server.ModelTrainingRequest': ( 'test_service.html#modeltrainingrequest',
'fast_kafka_api/server.py'),
'fast_kafka_api.server.ModelType': ('test_service.html#modeltype', 'fast_kafka_api/server.py'),
'fast_kafka_api.server.Prediction': ('test_service.html#prediction', 'fast_kafka_api/server.py'),
'fast_kafka_api.server.RealtimeData': ('test_service.html#realtimedata', 'fast_kafka_api/server.py'),
'fast_kafka_api.server.TrainingDataStatus': ( 'test_service.html#trainingdatastatus',
'fast_kafka_api/server.py'),
'fast_kafka_api.server.TrainingModelStatus': ( 'test_service.html#trainingmodelstatus',
'fast_kafka_api/server.py'),
'fast_kafka_api.server.create_ws_server': ( 'test_service.html#create_ws_server',
'fast_kafka_api/server.py')},
'fast_kafka_api.testing': {'fast_kafka_api.testing.true_after': ('testing.html#true_after', 'fast_kafka_api/testing.py')}}}
4 changes: 4 additions & 0 deletions fast_kafka_api/asyncapi.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@
from pydantic.schema import schema
from pydantic.json import timedelta_isoformat

import fast_kafka_api.logger

fast_kafka_api.logger.should_supress_timestamps = True

import fast_kafka_api
from .logger import get_logger

Expand Down
7 changes: 0 additions & 7 deletions fast_kafka_api/core.py

This file was deleted.

Loading

0 comments on commit b34a37d

Please sign in to comment.