code: def __init__(
      self,
      message: str,
      level: int,
      timestamp: Optional[float] = None,
      logger_info: Optional[Tuple[str, int]] = None,
      **kwargs,
  ):
      super().__init__()
      self.storage["message"] = message
      self.storage["log_level"] = level
      self.storage["timestamp"] = timestamp or time.time()
      if kwargs:
          self.storage["extra_args"] = kwargs
  
      if not logger_info:
          frame_info = getframeinfo(currentframe().f_back)
          logger_info = (frame_info.filename, frame_info.lineno)
      self.storage["__logger_info"] = logger_info
  
file_path: aim/aim/sdk/logging/log_record.py
imports: import time
  import logging
  from inspect import getframeinfo, currentframe
  from typing import Optional, Union, Tuple
  from aim.storage.object import CustomObject
  from aim.storage.hashing import hash_auto
  from aim.sdk.sequence import Sequence
label_desc: Use image node_id 1 to create a new LogRecord object from inherited base classes: CustomObject with example: obj = LogRecord(message, level, timestamp, logger_info)