Adding metadata to the jar

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Adding metadata to the jar

avilevi
Is there a way to add some metadata to the jar and see it on dashboard ? I couldn't find a way to do so but I think it very useful. 
Consider that you want to know which version is actually running in the job manager (not just which jar is uploaded which is not necessary being running at the moment ), AFAIK by looking at dashboard there is no way to know which jar / version is actually executing. Well as a workaround you can add something to the job name but this is a limited option, what if one wants to add more info programatically?

Is there a way to do it ?

BR
Avi
Reply | Threaded
Open this post in threaded view
|

Re: Adding metadata to the jar

Bruno Aranda
Hi Avi,

Don't know if there are better ways, but we store the version of the job running and other metadata as part of the "User configuration" of the job, so it shows in the UI when you go to the job Configuration tab inside the job. To do so, when we create the job:

val buildInfo = new Configuration()
buildInfo.setString("version", "0.1.0")
val env = StreamExecutionEnvironment.getExecutionEnvironment
env.getConfig.setGlobalJobParameters(buildInfo)
...
It helps us to have a convenient way of knowing what version of the jobs are running, when they were built, etc...

Cheers,

Bruno


On Mon, 8 Apr 2019 at 18:04, Avi Levi <[hidden email]> wrote:
Is there a way to add some metadata to the jar and see it on dashboard ? I couldn't find a way to do so but I think it very useful. 
Consider that you want to know which version is actually running in the job manager (not just which jar is uploaded which is not necessary being running at the moment ), AFAIK by looking at dashboard there is no way to know which jar / version is actually executing. Well as a workaround you can add something to the job name but this is a limited option, what if one wants to add more info programatically?

Is there a way to do it ?

BR
Avi
Reply | Threaded
Open this post in threaded view
|

Re: Adding metadata to the jar

Timothy Victor
One approach I use is to write the git commit sha to the jars manifest while compiling it (I don't use semantic versioning but rather use commit sha).

Then at runtime I read the implementationVersion (class.getPackage().getImplementationVersion()), and print that in the job name.

Tim

On Mon, Apr 8, 2019, 4:29 PM Bruno Aranda <[hidden email]> wrote:
Hi Avi,

Don't know if there are better ways, but we store the version of the job running and other metadata as part of the "User configuration" of the job, so it shows in the UI when you go to the job Configuration tab inside the job. To do so, when we create the job:

val buildInfo = new Configuration()
buildInfo.setString("version", "0.1.0")
val env = StreamExecutionEnvironment.getExecutionEnvironment
env.getConfig.setGlobalJobParameters(buildInfo)
...
It helps us to have a convenient way of knowing what version of the jobs are running, when they were built, etc...

Cheers,

Bruno


On Mon, 8 Apr 2019 at 18:04, Avi Levi <[hidden email]> wrote:
Is there a way to add some metadata to the jar and see it on dashboard ? I couldn't find a way to do so but I think it very useful. 
Consider that you want to know which version is actually running in the job manager (not just which jar is uploaded which is not necessary being running at the moment ), AFAIK by looking at dashboard there is no way to know which jar / version is actually executing. Well as a workaround you can add something to the job name but this is a limited option, what if one wants to add more info programatically?

Is there a way to do it ?

BR
Avi
Reply | Threaded
Open this post in threaded view
|

Re: Adding metadata to the jar

avilevi
Cool, thanks! Those are great options and just what I was looking for 

On Tue, Apr 9, 2019 at 12:42 AM Timothy Victor <[hidden email]> wrote:
One approach I use is to write the git commit sha to the jars manifest while compiling it (I don't use semantic versioning but rather use commit sha).

Then at runtime I read the implementationVersion (class.getPackage().getImplementationVersion()), and print that in the job name.

Tim

On Mon, Apr 8, 2019, 4:29 PM Bruno Aranda <[hidden email]> wrote:
Hi Avi,

Don't know if there are better ways, but we store the version of the job running and other metadata as part of the "User configuration" of the job, so it shows in the UI when you go to the job Configuration tab inside the job. To do so, when we create the job:

val buildInfo = new Configuration()
buildInfo.setString("version", "0.1.0")
val env = StreamExecutionEnvironment.getExecutionEnvironment
env.getConfig.setGlobalJobParameters(buildInfo)
...
It helps us to have a convenient way of knowing what version of the jobs are running, when they were built, etc...

Cheers,

Bruno


On Mon, 8 Apr 2019 at 18:04, Avi Levi <[hidden email]> wrote:
Is there a way to add some metadata to the jar and see it on dashboard ? I couldn't find a way to do so but I think it very useful. 
Consider that you want to know which version is actually running in the job manager (not just which jar is uploaded which is not necessary being running at the moment ), AFAIK by looking at dashboard there is no way to know which jar / version is actually executing. Well as a workaround you can add something to the job name but this is a limited option, what if one wants to add more info programatically?

Is there a way to do it ?

BR
Avi