예제 #1
0
    def execute(self, server_info, channel):
        api_client = export_service_pb2_grpc.TensorBoardExporterServiceStub(
            channel)
        fieldmask = experiment_pb2.ExperimentMask(
            name=True,
            description=True,
            create_time=True,
            update_time=True,
            num_runs=True,
            num_tags=True,
            num_scalars=True,
            total_tensor_bytes=True,
            total_blob_bytes=True,
        )
        gen = exporter_lib.list_experiments(api_client, fieldmask=fieldmask)
        count = 0

        if self.json:
            formatter = formatters.JsonFormatter()
        else:
            formatter = formatters.ReadableFormatter()
        for experiment in gen:
            count += 1
            experiment_id = experiment.experiment_id
            url = server_info_lib.experiment_url(server_info, experiment_id)
            print(formatter.format_experiment(experiment, url))
        sys.stdout.flush()
        if not count:
            sys.stderr.write(
                "No experiments. Use `tensorboard dev upload` to get started.\n"
            )
        else:
            sys.stderr.write("Total: %d experiment(s)\n" % count)
        sys.stderr.flush()
예제 #2
0
 def testJsonFormatterWithEmptyNameAndDescription(self):
     experiment = experiment_pb2.Experiment(
         experiment_id="deadbeef",
         # NOTE(cais): `name` and `description` are missing here.
         num_runs=2,
         num_tags=4,
         num_scalars=60,
         total_blob_bytes=1234,
     )
     util.set_timestamp(experiment.create_time, 981173106)
     util.set_timestamp(experiment.update_time, 1015218367)
     experiment_url = "http://tensorboard.dev/deadbeef"
     formatter = formatters.JsonFormatter()
     output = self._format(formatter, experiment, experiment_url)
     expected_lines = [
         "{",
         '  "url": "http://tensorboard.dev/deadbeef",',
         '  "name": "",',
         '  "description": "",',
         '  "id": "deadbeef",',
         '  "created": "2001-02-03T04:05:06Z",',
         '  "updated": "2002-03-04T05:06:07Z",',
         '  "runs": 2,',
         '  "tags": 4,',
         '  "scalars": 60,',
         '  "binary_object_bytes": 1234',
         "}",
     ]
     self.assertEqual(output.split("\n"), expected_lines)