[ 
https://issues.apache.org/jira/browse/BEAM-6165?focusedWorklogId=171732&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-171732
 ]

ASF GitHub Bot logged work on BEAM-6165:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 03/Dec/18 22:24
            Start Date: 03/Dec/18 22:24
    Worklog Time Spent: 10m 
      Work Description: ryan-williams commented on a change in pull request 
#7183: [BEAM-6165] send metrics to Flink in portable Flink runner
URL: https://github.com/apache/beam/pull/7183#discussion_r238462220
 
 

 ##########
 File path: sdks/python/apache_beam/runners/portability/flink_runner_test.py
 ##########
 @@ -59,25 +65,63 @@
   environment_type = known_args.environment_type.lower()
   environment_config = (
       known_args.environment_config if known_args.environment_config else None)
+  test = known_args.test
 
   # This is defined here to only be run when we invoke this file explicitly.
   class FlinkRunnerTest(portable_runner_test.PortableRunnerTest):
     _use_grpc = True
     _use_subprocesses = True
 
+    conf_dir = None
+
+    @classmethod
+    def tearDownClass(cls):
+      if cls.conf_dir and exists(cls.conf_dir):
+        logging.info("removing conf dir: %s" % cls.conf_dir)
+        rmtree(cls.conf_dir)
+      super(FlinkRunnerTest, cls).tearDownClass()
+
+    @classmethod
+    def _create_conf_dir(cls):
+      """Create (and save a static reference to) a "conf dir", used to provide 
metrics configs and
+       verify metrics output
+
+       It gets cleaned up when the suite is done executing"""
+
+      if hasattr(cls, 'conf_dir'):
+        cls.conf_dir = mkdtemp(prefix='flinktest-conf')
+
+        # path for a FileReporter to write metrics to
+        cls.test_metrics_path = path.join(cls.conf_dir, 'test-metrics.txt')
+
+        # path to write Flink configuration to
+        conf_path = path.join(cls.conf_dir, 'flink-conf.yaml')
+        with open(conf_path, 'w') as f:
+          f.write(linesep.join([
+            'metrics.reporters: test',
+            'metrics.reporter.test.class: 
org.apache.beam.runners.flink.metrics.FileReporter',
+            'metrics.reporter.test.file: %s' % cls.test_metrics_path
+          ]))
+
     @classmethod
     def _subprocess_command(cls, port):
-      tmp_dir = tempfile.mkdtemp(prefix='flinktest')
+      # will be cleaned up at the end of this method, and recreated and used 
by the job server
+      tmp_dir = mkdtemp(prefix='flinktest')
+
+      cls._create_conf_dir()
+
       try:
         return [
             'java',
             '-jar', flink_job_server_jar,
+            '--flink-master-url', '[local]',
 
 Review comment:
   hm I think you pasted the wrong link @mxm? afaict you just linked to this PR.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 171732)
    Time Spent: 3h  (was: 2h 50m)

> Send metrics to Flink in portable Flink runner
> ----------------------------------------------
>
>                 Key: BEAM-6165
>                 URL: https://issues.apache.org/jira/browse/BEAM-6165
>             Project: Beam
>          Issue Type: Improvement
>          Components: runner-flink
>    Affects Versions: 2.8.0
>            Reporter: Ryan Williams
>            Assignee: Ryan Williams
>            Priority: Major
>              Labels: metrics, portability, portability-flink
>          Time Spent: 3h
>  Remaining Estimate: 0h
>
> Metrics are sent from the fn harness to runnerĀ in the Python SDK (and likely 
> Java soon), but the portable Flink runner doesn't pass them on to Flink, 
> which it should, so that users can see them in e.g. the Flink UI or via any 
> Flink metrics reporters.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to