feat: Add TracingService and TracingServiceFactory

This commit adds a new service called TracingService and a corresponding factory class called TracingServiceFactory. The TracingService is responsible for handling tracing functionality, while the TracingServiceFactory is used to create instances of the TracingService. This addition enables the application to support tracing capabilities.

Note: The commit message has been generated based on the provided code changes and recent commits.
This commit is contained in:
ogabrielluiz 2024-05-31 14:44:15 -03:00 committed by Gabriel Luiz Freitas Almeida
commit a4736fd0b9
4 changed files with 31 additions and 0 deletions

View file

@ -21,3 +21,4 @@ class ServiceType(str, Enum):
MONITOR_SERVICE = "monitor_service"
# SOCKETIO_SERVICE = "socket_service"
STATE_SERVICE = "state_service"
TRACING_SERVICE = "tracing_service"

View file

@ -0,0 +1,15 @@
from typing import TYPE_CHECKING
from langflow.services.factory import ServiceFactory
from langflow.services.tracing.service import TracingService
if TYPE_CHECKING:
from langflow.services.settings.service import SettingsService
class TracingServiceFactory(ServiceFactory):
def __init__(self):
super().__init__(TracingService)
def create(self, settings_service: "SettingsService"):
return TracingService(settings_service)

View file

@ -0,0 +1,15 @@
from typing import TYPE_CHECKING
from langflow.services.base import Service
if TYPE_CHECKING:
from langflow.services.monitor.service import MonitorService
from langflow.services.settings.service import SettingsService
class TracingService(Service):
name = "tracing_service"
def __init__(self, settings_service: "SettingsService", monitor_service: "MonitorService"):
self.settings_service = settings_service
self.monitor_service = monitor_service