Revision d1bb10bd

b/py/scenic/logger.py
89 89
    if level is not None:
90 90
        SYSTEMWIDE_LEVEL = level
91 91
    logger = logging.getLogger(name)
92
    formatter = logging.Formatter('%(asctime)s %(name)-12s %(levelname)-8s %(message)s')
92
    formatter = logging.Formatter('%(asctime)s %(name)-13s %(levelname)-8s %(message)s')
93 93
    set_level(SYSTEMWIDE_LEVEL, name)
94 94
    if to_stdout is True or to_stdout is False:
95 95
        SYSTEMWIDE_TO_STDOUT = to_stdout
b/py/scenic/streamer.py
55 55
        self.session_details = None # either None or a big dict
56 56
        self.rtcp_stats = None # either None or a big dict
57 57
        self.error_messages = None # either None or a big dict
58
        self.warnings = None # either None or a big dict
58 59

  
59 60
    def get_max_channels_in_raw(self):
60 61
        """
......
264 265
            "send": [], # list of strings
265 266
            "receive": [], # list of strings
266 267
            }
268
        self.warnings = {
269
            "send": [], # list of strings
270
            "receive": [], # list of strings
271
            }
267 272
        
268 273
    def start(self, host):
269 274
        """
......
528 533
        """
529 534
        Handles a new line from our receiver process' stdout
530 535
        """
536
        
537
        if "WARNING" in line:
538
            log.warning(line)
539
            self.warnings["receive"].append(line)
531 540
        try:
532 541
            if "stream connected" in line:
533 542
                if "audio" in line:
......
540 549
                elif "audio" in line:
541 550
                    self.rtcp_stats["receive"]["audio"]["bitrate"] = int(line.split(":")[-1])
542 551
            else:
543
                log.debug("%9s stdout: %s" % (process_manager.identifier, line))
552
                log.debug("%s stdout: %s" % (process_manager.identifier, line))
544 553
        except ValueError, e:
545 554
            log.error("%s when parsing line '%s' from receiver" % (e, line))
546 555

  
......
551 560
        log.error("%9s stderr: %s" % (process_manager.identifier, line))
552 561
        if "CRITICAL" in line or "ERROR" in line:
553 562
            self.error_messages["receive"].append(line)
563
        if "WARNING" in line:
564
            log.warning(line)
565
            self.warnings["receive"].append(line)
554 566
    
555 567
    def on_sender_stdout_line(self, process_manager, line):
556 568
        """
557 569
        Handles a new line from our receiver process' stdout
558 570
        """
559
        log.debug("%9s stdout: %s" % (process_manager.identifier, line))
571
        log.debug("%s stdout: %s" % (process_manager.identifier, line))
572
        if "WARNING" in line:
573
            log.warning(line)
574
            self.warnings["receive"].append(line)
560 575
        try:
561 576
            if "PACKETS-LOST" in line:
562 577
                if "video" in line:
......
600 615
        log.error("%9s stderr: %s" % (process_manager.identifier, line))
601 616
        if "CRITICAL" in line or "ERROR" in line:
602 617
            self.error_messages["send"].append(line)
618
        if "WARNING" in line:
619
            log.warning(line)
620
            self.warnings["receive"].append(line)
603 621

  
604 622
    def is_busy(self):
605 623
        """
......
659 677
        #TODO: internationalize
660 678
        log.info("All streamers are stopped.")
661 679
        if len(self.error_messages["send"]) != 0:
680
            show_error_dialog = True
662 681
            log.error("Error messages from the sender for this session: %s" % (self.error_messages["send"]))
663 682
            details += _("Errors from local sender:") + "\n"
664 683
            for line in self.error_messages["send"]:
665 684
                details += " * " + line + "\n"
666
            show_error_dialog = True
685
            if len(self.warnings["send"]) != 0:
686
                details += _("Warnings from local sender:") + "\n"
687
                for line in self.warnings["send"]:
688
                    details += " * " + line + "\n"
667 689
        if len(self.error_messages["receive"]) != 0:
690
            show_error_dialog = True
668 691
            log.error("Error messages from the receiver for this session: %s" % (self.error_messages["receive"]))
669 692
            details += _("Errors from local receiver:") + "\n"
670 693
            for line in self.error_messages["receive"]:
671 694
                details += " * " + line + "\n"
672
            show_error_dialog = True
695
            if len(self.warnings["receive"]) != 0:
696
                details += _("Warnings from local receiver:") + "\n"
697
                for line in self.warnings["send"]:
698
                    details += " * " + line + "\n"
673 699
        if show_error_dialog:
674 700
            msg = _("Some errors occured during the audio/video streaming session.")
675 701
            self.app.gui.show_error_dialog(msg, details=details)
......
682 708
        self.extra_receiver = None
683 709
        self.midi_receiver = None
684 710
        self.midi_sender = None
685
        log.debug("Process managers should all be None: %s" % (self.get_all_streamer_process_managers()))
711
        log.debug("Done stopping steaming")
686 712
    
687 713
    def _set_state(self, new_state):
688 714
        """
......
709 735
                if proc is not None:
710 736
                    if proc.state != process.STATE_STOPPED and proc.state != process.STATE_STOPPING:
711 737
                        proc.stop()
738

  

Also available in: Unified diff