You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@flink.apache.org by Vitaliy Semochkin <vi...@gmail.com> on 2020/03/28 20:32:19 UTC

Log file environment variable 'log.file' is not set.

Hi,

When I launch Flink Application Cluster I keep getting a message
" Log file environment variable 'log.file' is not set."

I use console logging via log4j
and I read logs via yarn logs -applicationId ....

What's the purpose of log.file property?
What this file will contain and on which host should I search for the log?
Does this property understands hdfs paths?

Regards,
Vitaliy

Re: Log file environment variable 'log.file' is not set.

Posted by Vitaliy Semochkin <vi...@gmail.com>.
Hello Robert,
Thank you for the help, *tried to access method
org.apache.hadoop.yarn.client.**ConfiguredRMFailoverProxyProvi*
 was the root of the issue.


I managed to fix issue with the  "hadoop version is 2.4.1", it was because
previous flink version I was using referred to
org.apache.flink:flink-shaded-hadoo*p2*
and now it became org.apache.flink:flink-shaded-hadoo*p-2*, hence I had an
incorrect jar "org.apache.flink:flink-shaded-hadoop-2:jar:2.4.1-*9.0"*
in my runtime. I excluded it from classpath and added correct version
org.apache.flink:flink-shaded-hadoop-2:jar:2.7.5-*10.0*

that helped to solve

> *Caused by: java.lang.IllegalAccessError: tried to access method
> org.apache.hadoop.yarn.client.**ConfiguredRMFailoverProxyProvi*
> *der.getProxyInternal()Ljava/*lang/Object; from class
> org.apache.hadoop.yarn.client.RequestHedgingRMFailoverProxyProvider

And the job now runs without an error.
As for  message saying,  YarnJobClusterEntrypoint (Version: 1.7.0.. it
turned out that flink takes it's version from
META-INF/MANIFEST.FM, which in case you use a shaded uber jar will be the
version of your application and not flink.

Best Regards
Vitaliy

On Tue, Mar 31, 2020 at 9:46 AM Robert Metzger <rm...@apache.org> wrote:

> Hey Vitaliy,
>
> Check this documentation on how to use Flink with Hadoop:
> https://ci.apache.org/projects/flink/flink-docs-release-1.10/ops/deployment/hadoop.html
> For your setup, I would recommend referencing the Hadoop jars from your
> Hadoop vendor by setting
>
> export HADOOP_CLASSPATH=`hadoop classpath`
>
> Is it possible that the files on your cluster are Flink 1.7.0 files, while
> your Flink job maven project has Flink 1.10 dependencies?
> On your server, what version do the flink jar files in lib/ have?
>
> If your are launching Flink like this...
>
> ./bin/flink run -m yarn-cluster -p 4 -yjm 1024m -ytm 4096m ./my/project.jar
>
> ... it will use the files in lib/ for starting Flink.
>
> Best,
> Robert
>
>
> On Mon, Mar 30, 2020 at 5:39 PM Vitaliy Semochkin <vi...@gmail.com>
> wrote:
>
>> Hello Robert,
>> Thank you for quick response!
>> Indeed logs says the hadoop version is 2.4.1 this is probably because of
>>
>> https://github.com/apache/flink/blob/b17a597dec80e590db2beedda446aa3cae9920dd/pom.xml#L96
>> How can I make 1.10 to work with my current hadoop version?
>>
>> Regarding flink reporting in logs its 1.7.0
>> org.apache.flink.runtime.entrypoint.ClusterEntrypoint         -  Starting
>> YarnJobClusterEntrypoint (Version: 1.7.0
>> while I'm using 1.10 and this is application cluster (everything is
>> bundled and we don't have session cluster running).
>> Here are the whole dependencies list:
>> mvn dependency:tree | grep flink | cut -d'-' -f2-
>>  org.apache.flink:flink-yarn_2.11:jar:1.10.0:runtime
>>  org.apache.flink:flink-clients_2.11:jar:1.10.0:compile
>>  org.apache.flink:flink-optimizer_2.11:jar:1.10.0:compile
>>  org.apache.flink:flink-shaded-hadoop-2:jar:2.4.1-9.0:runtime
>>  org.apache.flink:force-shading:jar:1.10.0:compile
>>  org.apache.flink:flink-runtime_2.11:jar:1.10.0:runtime
>>  org.apache.flink:flink-core:jar:1.10.0:compile
>>  org.apache.flink:flink-annotations:jar:1.10.0:compile
>>  org.apache.flink:flink-metrics-core:jar:1.10.0:compile
>>  org.apache.flink:flink-java:jar:1.10.0:compile
>>  org.apache.flink:flink-queryable-state-client-java:jar:1.10.0:runtime
>>  org.apache.flink:flink-hadoop-fs:jar:1.10.0:runtime
>>  org.apache.flink:flink-shaded-netty:jar:4.1.39.Final-9.0:compile
>>  org.apache.flink:flink-shaded-guava:jar:18.0-9.0:compile
>>  org.apache.flink:flink-shaded-asm-7:jar:7.1-9.0:compile
>>  org.apache.flink:flink-shaded-jackson:jar:2.10.1-9.0:compile
>>  org.apache.flink:flink-jdbc_2.11:jar:1.10.0:compile
>>  org.apache.flink:flink-hbase_2.11:jar:1.10.0:compile
>>  org.apache.flink:flink-runtime-web_2.11:jar:1.10.0:compile
>> As you can see all flink related libs are 1.10.
>>
>> Can you please tell which class in flinks identifies the version(I'll try
>> to debug it locally)?
>>
>> Regards,
>> Vitaliy
>>
>>
>> On Mon, Mar 30, 2020 at 5:10 PM Robert Metzger <rm...@apache.org>
>> wrote:
>>
>>> Hey Vitaliy,
>>> is it okay for you if we keep the discussion on the list, so that others
>>> can chime in to help, and that Google can index the conversation, in case
>>> somebody else has a similar problem?
>>>
>>> I just checked, and Flink on YARN in Flink 1.10 does set the
>>> property correctly. Maybe in Flink 1.7, accessing the logs in the web ui
>>> was not yet supported.
>>>
>>> You said in your email, that you are using Flink 1.10, however, your
>>> logs state that you are running Flink 1.7.0.
>>> It also seems that you have the Hadoop 2.4.1 dependencies of Flink, but
>>> your Hadoop environment is Hadoop 2.7.3. I believe this error is caused by
>>> that version mismatch:
>>>
>>> Caused by: java.lang.IllegalAccessError: tried to access method
>>>> org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider.getProxyInternal()Ljava/lang/Object;
>>>> from class
>>>> org.apache.hadoop.yarn.client.RequestHedgingRMFailoverProxyProvider
>>>
>>>
>>>
>>>
>>> On Mon, Mar 30, 2020 at 1:58 PM Vitaliy Semochkin <vi...@gmail.com>
>>> wrote:
>>>
>>>> Hello Robert,
>>>> >Where exactly are you seeing the "Log file environment variable
>>>> 'log.file' is not set." message?
>>>> I get this message when I check yarn logs.
>>>>
>>>> >Can you post some context around it? (is this shown from the command
>>>> line? what are the arguments? is it shown in a file?
>>>> I'm creating an application cluster from a java application using flink
>>>> 1.10. I didn't have this issue with 1.8.1 version,
>>>> however when I upgraded configuration slightly changed, e.g.
>>>> ClusterSpecification taskManagerMemoryMB is now ignored, and should be set
>>>> via fink Configuration.
>>>> (though it's value still validated, but no longer used after that).
>>>> My main issue, is that Application seems to fail to start properly,  it
>>>> seems that JobMaster fails to connect to ResourceManager, but I can't
>>>> figure out why.
>>>> The yarn log  is attached.
>>>>
>>>> I'll appreciate if you tell me to which direction I should dig.
>>>>
>>>> Regards,
>>>> Vitaliy
>>>>
>>>>
>>>> On Mon, Mar 30, 2020 at 12:00 PM Robert Metzger <rm...@apache.org>
>>>> wrote:
>>>>
>>>>> Hey,
>>>>> which Flink version are you using?
>>>>>
>>>>> Where exactly are you seeing the "Log file environment variable
>>>>> 'log.file' is not set." message? Can you post some context around it? (is
>>>>> this shown from the command line? what are the arguments? is it shown in a
>>>>> file?
>>>>>
>>>>> Usually, the "log.file" property is used to pass the name of the log
>>>>> file into the log4j configuration. If this property is not set, I have to
>>>>> assume that you are using modified or custom scripts, or you are executing
>>>>> Flink in an environment that fails to set the property.
>>>>>
>>>>> When running Flink on YARN, the JobManager logs are stored on the
>>>>> machine running the JobManager. The logs accessible through "yarn logs" are
>>>>> the same as you would see in the JM interface.
>>>>>
>>>>> Best,
>>>>> Robert
>>>>>
>>>>>
>>>>>
>>>>> On Sun, Mar 29, 2020 at 11:22 PM Vitaliy Semochkin <
>>>>> vitaliy.se@gmail.com> wrote:
>>>>>
>>>>>> Hello Yun,
>>>>>>
>>>>>> I see this error reported by:
>>>>>> *org.apache.flink.runtime.webmonitor.WebMonitorUtils*  - *JobManager
>>>>>> log files are unavailable in the web dashboard. Log file location not found
>>>>>> in environment variable 'log.file' or configuration key 'Key:
>>>>>> 'web.log.path' , default: null (fallback keys:
>>>>>> [{key=jobmanager.web.log.path, isDeprecated=true}])'.*
>>>>>>
>>>>>> I wonder where the JobManager files are stored in case running on a
>>>>>> YARN cluster?
>>>>>> Are these logs same to those I get via yarn logs -applicationId?
>>>>>>
>>>>>> Regards,
>>>>>> Vitaliy
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Sun, Mar 29, 2020 at 8:24 PM Yun Tang <my...@live.com> wrote:
>>>>>>
>>>>>>> Hi Vitaliy
>>>>>>>
>>>>>>> Property of 'log.file' would be configured if you have uploaded
>>>>>>> 'logback.xml' or 'log4j.properties' [1].
>>>>>>> The file would contain logs of job manager or task manager which is
>>>>>>> decided by the component itself. And as you can see, this is only a local
>>>>>>> file path, I am afraid this cannot understand hdfs paths.
>>>>>>>
>>>>>>>
>>>>>>> [1]
>>>>>>> https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420
>>>>>>>
>>>>>>> Best
>>>>>>> Yun Tang
>>>>>>> ------------------------------
>>>>>>> *From:* Vitaliy Semochkin <vi...@gmail.com>
>>>>>>> *Sent:* Sunday, March 29, 2020 4:32
>>>>>>> *To:* user <us...@flink.apache.org>
>>>>>>> *Subject:* Log file environment variable 'log.file' is not set.
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> When I launch Flink Application Cluster I keep getting a message
>>>>>>> " Log file environment variable 'log.file' is not set."
>>>>>>>
>>>>>>> I use console logging via log4j
>>>>>>> and I read logs via yarn logs -applicationId ....
>>>>>>>
>>>>>>> What's the purpose of log.file property?
>>>>>>> What this file will contain and on which host should I search for
>>>>>>> the log?
>>>>>>> Does this property understands hdfs paths?
>>>>>>>
>>>>>>> Regards,
>>>>>>> Vitaliy
>>>>>>>
>>>>>>

Re: Log file environment variable 'log.file' is not set.

Posted by Robert Metzger <rm...@apache.org>.
Hey Vitaliy,

Check this documentation on how to use Flink with Hadoop:
https://ci.apache.org/projects/flink/flink-docs-release-1.10/ops/deployment/hadoop.html
For your setup, I would recommend referencing the Hadoop jars from your
Hadoop vendor by setting

export HADOOP_CLASSPATH=`hadoop classpath`

Is it possible that the files on your cluster are Flink 1.7.0 files, while
your Flink job maven project has Flink 1.10 dependencies?
On your server, what version do the flink jar files in lib/ have?

If your are launching Flink like this...

./bin/flink run -m yarn-cluster -p 4 -yjm 1024m -ytm 4096m ./my/project.jar

... it will use the files in lib/ for starting Flink.

Best,
Robert


On Mon, Mar 30, 2020 at 5:39 PM Vitaliy Semochkin <vi...@gmail.com>
wrote:

> Hello Robert,
> Thank you for quick response!
> Indeed logs says the hadoop version is 2.4.1 this is probably because of
>
> https://github.com/apache/flink/blob/b17a597dec80e590db2beedda446aa3cae9920dd/pom.xml#L96
> How can I make 1.10 to work with my current hadoop version?
>
> Regarding flink reporting in logs its 1.7.0
> org.apache.flink.runtime.entrypoint.ClusterEntrypoint         -  Starting
> YarnJobClusterEntrypoint (Version: 1.7.0
> while I'm using 1.10 and this is application cluster (everything is
> bundled and we don't have session cluster running).
> Here are the whole dependencies list:
> mvn dependency:tree | grep flink | cut -d'-' -f2-
>  org.apache.flink:flink-yarn_2.11:jar:1.10.0:runtime
>  org.apache.flink:flink-clients_2.11:jar:1.10.0:compile
>  org.apache.flink:flink-optimizer_2.11:jar:1.10.0:compile
>  org.apache.flink:flink-shaded-hadoop-2:jar:2.4.1-9.0:runtime
>  org.apache.flink:force-shading:jar:1.10.0:compile
>  org.apache.flink:flink-runtime_2.11:jar:1.10.0:runtime
>  org.apache.flink:flink-core:jar:1.10.0:compile
>  org.apache.flink:flink-annotations:jar:1.10.0:compile
>  org.apache.flink:flink-metrics-core:jar:1.10.0:compile
>  org.apache.flink:flink-java:jar:1.10.0:compile
>  org.apache.flink:flink-queryable-state-client-java:jar:1.10.0:runtime
>  org.apache.flink:flink-hadoop-fs:jar:1.10.0:runtime
>  org.apache.flink:flink-shaded-netty:jar:4.1.39.Final-9.0:compile
>  org.apache.flink:flink-shaded-guava:jar:18.0-9.0:compile
>  org.apache.flink:flink-shaded-asm-7:jar:7.1-9.0:compile
>  org.apache.flink:flink-shaded-jackson:jar:2.10.1-9.0:compile
>  org.apache.flink:flink-jdbc_2.11:jar:1.10.0:compile
>  org.apache.flink:flink-hbase_2.11:jar:1.10.0:compile
>  org.apache.flink:flink-runtime-web_2.11:jar:1.10.0:compile
> As you can see all flink related libs are 1.10.
>
> Can you please tell which class in flinks identifies the version(I'll try
> to debug it locally)?
>
> Regards,
> Vitaliy
>
>
> On Mon, Mar 30, 2020 at 5:10 PM Robert Metzger <rm...@apache.org>
> wrote:
>
>> Hey Vitaliy,
>> is it okay for you if we keep the discussion on the list, so that others
>> can chime in to help, and that Google can index the conversation, in case
>> somebody else has a similar problem?
>>
>> I just checked, and Flink on YARN in Flink 1.10 does set the
>> property correctly. Maybe in Flink 1.7, accessing the logs in the web ui
>> was not yet supported.
>>
>> You said in your email, that you are using Flink 1.10, however, your logs
>> state that you are running Flink 1.7.0.
>> It also seems that you have the Hadoop 2.4.1 dependencies of Flink, but
>> your Hadoop environment is Hadoop 2.7.3. I believe this error is caused by
>> that version mismatch:
>>
>> Caused by: java.lang.IllegalAccessError: tried to access method
>>> org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider.getProxyInternal()Ljava/lang/Object;
>>> from class
>>> org.apache.hadoop.yarn.client.RequestHedgingRMFailoverProxyProvider
>>
>>
>>
>>
>> On Mon, Mar 30, 2020 at 1:58 PM Vitaliy Semochkin <vi...@gmail.com>
>> wrote:
>>
>>> Hello Robert,
>>> >Where exactly are you seeing the "Log file environment variable
>>> 'log.file' is not set." message?
>>> I get this message when I check yarn logs.
>>>
>>> >Can you post some context around it? (is this shown from the command
>>> line? what are the arguments? is it shown in a file?
>>> I'm creating an application cluster from a java application using flink
>>> 1.10. I didn't have this issue with 1.8.1 version,
>>> however when I upgraded configuration slightly changed, e.g.
>>> ClusterSpecification taskManagerMemoryMB is now ignored, and should be set
>>> via fink Configuration.
>>> (though it's value still validated, but no longer used after that).
>>> My main issue, is that Application seems to fail to start properly,  it
>>> seems that JobMaster fails to connect to ResourceManager, but I can't
>>> figure out why.
>>> The yarn log  is attached.
>>>
>>> I'll appreciate if you tell me to which direction I should dig.
>>>
>>> Regards,
>>> Vitaliy
>>>
>>>
>>> On Mon, Mar 30, 2020 at 12:00 PM Robert Metzger <rm...@apache.org>
>>> wrote:
>>>
>>>> Hey,
>>>> which Flink version are you using?
>>>>
>>>> Where exactly are you seeing the "Log file environment variable
>>>> 'log.file' is not set." message? Can you post some context around it? (is
>>>> this shown from the command line? what are the arguments? is it shown in a
>>>> file?
>>>>
>>>> Usually, the "log.file" property is used to pass the name of the log
>>>> file into the log4j configuration. If this property is not set, I have to
>>>> assume that you are using modified or custom scripts, or you are executing
>>>> Flink in an environment that fails to set the property.
>>>>
>>>> When running Flink on YARN, the JobManager logs are stored on the
>>>> machine running the JobManager. The logs accessible through "yarn logs" are
>>>> the same as you would see in the JM interface.
>>>>
>>>> Best,
>>>> Robert
>>>>
>>>>
>>>>
>>>> On Sun, Mar 29, 2020 at 11:22 PM Vitaliy Semochkin <
>>>> vitaliy.se@gmail.com> wrote:
>>>>
>>>>> Hello Yun,
>>>>>
>>>>> I see this error reported by:
>>>>> *org.apache.flink.runtime.webmonitor.WebMonitorUtils*  - *JobManager
>>>>> log files are unavailable in the web dashboard. Log file location not found
>>>>> in environment variable 'log.file' or configuration key 'Key:
>>>>> 'web.log.path' , default: null (fallback keys:
>>>>> [{key=jobmanager.web.log.path, isDeprecated=true}])'.*
>>>>>
>>>>> I wonder where the JobManager files are stored in case running on a
>>>>> YARN cluster?
>>>>> Are these logs same to those I get via yarn logs -applicationId?
>>>>>
>>>>> Regards,
>>>>> Vitaliy
>>>>>
>>>>>
>>>>>
>>>>> On Sun, Mar 29, 2020 at 8:24 PM Yun Tang <my...@live.com> wrote:
>>>>>
>>>>>> Hi Vitaliy
>>>>>>
>>>>>> Property of 'log.file' would be configured if you have uploaded
>>>>>> 'logback.xml' or 'log4j.properties' [1].
>>>>>> The file would contain logs of job manager or task manager which is
>>>>>> decided by the component itself. And as you can see, this is only a local
>>>>>> file path, I am afraid this cannot understand hdfs paths.
>>>>>>
>>>>>>
>>>>>> [1]
>>>>>> https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420
>>>>>>
>>>>>> Best
>>>>>> Yun Tang
>>>>>> ------------------------------
>>>>>> *From:* Vitaliy Semochkin <vi...@gmail.com>
>>>>>> *Sent:* Sunday, March 29, 2020 4:32
>>>>>> *To:* user <us...@flink.apache.org>
>>>>>> *Subject:* Log file environment variable 'log.file' is not set.
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> When I launch Flink Application Cluster I keep getting a message
>>>>>> " Log file environment variable 'log.file' is not set."
>>>>>>
>>>>>> I use console logging via log4j
>>>>>> and I read logs via yarn logs -applicationId ....
>>>>>>
>>>>>> What's the purpose of log.file property?
>>>>>> What this file will contain and on which host should I search for the
>>>>>> log?
>>>>>> Does this property understands hdfs paths?
>>>>>>
>>>>>> Regards,
>>>>>> Vitaliy
>>>>>>
>>>>>

Re: Log file environment variable 'log.file' is not set.

Posted by Vitaliy Semochkin <vi...@gmail.com>.
Hello Robert,
Thank you for quick response!
Indeed logs says the hadoop version is 2.4.1 this is probably because of
https://github.com/apache/flink/blob/b17a597dec80e590db2beedda446aa3cae9920dd/pom.xml#L96
How can I make 1.10 to work with my current hadoop version?

Regarding flink reporting in logs its 1.7.0
org.apache.flink.runtime.entrypoint.ClusterEntrypoint         -  Starting
YarnJobClusterEntrypoint (Version: 1.7.0
while I'm using 1.10 and this is application cluster (everything is bundled
and we don't have session cluster running).
Here are the whole dependencies list:
mvn dependency:tree | grep flink | cut -d'-' -f2-
 org.apache.flink:flink-yarn_2.11:jar:1.10.0:runtime
 org.apache.flink:flink-clients_2.11:jar:1.10.0:compile
 org.apache.flink:flink-optimizer_2.11:jar:1.10.0:compile
 org.apache.flink:flink-shaded-hadoop-2:jar:2.4.1-9.0:runtime
 org.apache.flink:force-shading:jar:1.10.0:compile
 org.apache.flink:flink-runtime_2.11:jar:1.10.0:runtime
 org.apache.flink:flink-core:jar:1.10.0:compile
 org.apache.flink:flink-annotations:jar:1.10.0:compile
 org.apache.flink:flink-metrics-core:jar:1.10.0:compile
 org.apache.flink:flink-java:jar:1.10.0:compile
 org.apache.flink:flink-queryable-state-client-java:jar:1.10.0:runtime
 org.apache.flink:flink-hadoop-fs:jar:1.10.0:runtime
 org.apache.flink:flink-shaded-netty:jar:4.1.39.Final-9.0:compile
 org.apache.flink:flink-shaded-guava:jar:18.0-9.0:compile
 org.apache.flink:flink-shaded-asm-7:jar:7.1-9.0:compile
 org.apache.flink:flink-shaded-jackson:jar:2.10.1-9.0:compile
 org.apache.flink:flink-jdbc_2.11:jar:1.10.0:compile
 org.apache.flink:flink-hbase_2.11:jar:1.10.0:compile
 org.apache.flink:flink-runtime-web_2.11:jar:1.10.0:compile
As you can see all flink related libs are 1.10.

Can you please tell which class in flinks identifies the version(I'll try
to debug it locally)?

Regards,
Vitaliy


On Mon, Mar 30, 2020 at 5:10 PM Robert Metzger <rm...@apache.org> wrote:

> Hey Vitaliy,
> is it okay for you if we keep the discussion on the list, so that others
> can chime in to help, and that Google can index the conversation, in case
> somebody else has a similar problem?
>
> I just checked, and Flink on YARN in Flink 1.10 does set the
> property correctly. Maybe in Flink 1.7, accessing the logs in the web ui
> was not yet supported.
>
> You said in your email, that you are using Flink 1.10, however, your logs
> state that you are running Flink 1.7.0.
> It also seems that you have the Hadoop 2.4.1 dependencies of Flink, but
> your Hadoop environment is Hadoop 2.7.3. I believe this error is caused by
> that version mismatch:
>
> Caused by: java.lang.IllegalAccessError: tried to access method
>> org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider.getProxyInternal()Ljava/lang/Object;
>> from class
>> org.apache.hadoop.yarn.client.RequestHedgingRMFailoverProxyProvider
>
>
>
>
> On Mon, Mar 30, 2020 at 1:58 PM Vitaliy Semochkin <vi...@gmail.com>
> wrote:
>
>> Hello Robert,
>> >Where exactly are you seeing the "Log file environment variable
>> 'log.file' is not set." message?
>> I get this message when I check yarn logs.
>>
>> >Can you post some context around it? (is this shown from the command
>> line? what are the arguments? is it shown in a file?
>> I'm creating an application cluster from a java application using flink
>> 1.10. I didn't have this issue with 1.8.1 version,
>> however when I upgraded configuration slightly changed, e.g.
>> ClusterSpecification taskManagerMemoryMB is now ignored, and should be set
>> via fink Configuration.
>> (though it's value still validated, but no longer used after that).
>> My main issue, is that Application seems to fail to start properly,  it
>> seems that JobMaster fails to connect to ResourceManager, but I can't
>> figure out why.
>> The yarn log  is attached.
>>
>> I'll appreciate if you tell me to which direction I should dig.
>>
>> Regards,
>> Vitaliy
>>
>>
>> On Mon, Mar 30, 2020 at 12:00 PM Robert Metzger <rm...@apache.org>
>> wrote:
>>
>>> Hey,
>>> which Flink version are you using?
>>>
>>> Where exactly are you seeing the "Log file environment variable
>>> 'log.file' is not set." message? Can you post some context around it? (is
>>> this shown from the command line? what are the arguments? is it shown in a
>>> file?
>>>
>>> Usually, the "log.file" property is used to pass the name of the log
>>> file into the log4j configuration. If this property is not set, I have to
>>> assume that you are using modified or custom scripts, or you are executing
>>> Flink in an environment that fails to set the property.
>>>
>>> When running Flink on YARN, the JobManager logs are stored on the
>>> machine running the JobManager. The logs accessible through "yarn logs" are
>>> the same as you would see in the JM interface.
>>>
>>> Best,
>>> Robert
>>>
>>>
>>>
>>> On Sun, Mar 29, 2020 at 11:22 PM Vitaliy Semochkin <vi...@gmail.com>
>>> wrote:
>>>
>>>> Hello Yun,
>>>>
>>>> I see this error reported by:
>>>> *org.apache.flink.runtime.webmonitor.WebMonitorUtils*  - *JobManager
>>>> log files are unavailable in the web dashboard. Log file location not found
>>>> in environment variable 'log.file' or configuration key 'Key:
>>>> 'web.log.path' , default: null (fallback keys:
>>>> [{key=jobmanager.web.log.path, isDeprecated=true}])'.*
>>>>
>>>> I wonder where the JobManager files are stored in case running on a
>>>> YARN cluster?
>>>> Are these logs same to those I get via yarn logs -applicationId?
>>>>
>>>> Regards,
>>>> Vitaliy
>>>>
>>>>
>>>>
>>>> On Sun, Mar 29, 2020 at 8:24 PM Yun Tang <my...@live.com> wrote:
>>>>
>>>>> Hi Vitaliy
>>>>>
>>>>> Property of 'log.file' would be configured if you have uploaded
>>>>> 'logback.xml' or 'log4j.properties' [1].
>>>>> The file would contain logs of job manager or task manager which is
>>>>> decided by the component itself. And as you can see, this is only a local
>>>>> file path, I am afraid this cannot understand hdfs paths.
>>>>>
>>>>>
>>>>> [1]
>>>>> https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420
>>>>>
>>>>> Best
>>>>> Yun Tang
>>>>> ------------------------------
>>>>> *From:* Vitaliy Semochkin <vi...@gmail.com>
>>>>> *Sent:* Sunday, March 29, 2020 4:32
>>>>> *To:* user <us...@flink.apache.org>
>>>>> *Subject:* Log file environment variable 'log.file' is not set.
>>>>>
>>>>> Hi,
>>>>>
>>>>> When I launch Flink Application Cluster I keep getting a message
>>>>> " Log file environment variable 'log.file' is not set."
>>>>>
>>>>> I use console logging via log4j
>>>>> and I read logs via yarn logs -applicationId ....
>>>>>
>>>>> What's the purpose of log.file property?
>>>>> What this file will contain and on which host should I search for the
>>>>> log?
>>>>> Does this property understands hdfs paths?
>>>>>
>>>>> Regards,
>>>>> Vitaliy
>>>>>
>>>>

Re: Log file environment variable 'log.file' is not set.

Posted by Robert Metzger <rm...@apache.org>.
Hey,
which Flink version are you using?

Where exactly are you seeing the "Log file environment variable 'log.file'
is not set." message? Can you post some context around it? (is this shown
from the command line? what are the arguments? is it shown in a file?

Usually, the "log.file" property is used to pass the name of the log file
into the log4j configuration. If this property is not set, I have to assume
that you are using modified or custom scripts, or you are executing Flink
in an environment that fails to set the property.

When running Flink on YARN, the JobManager logs are stored on the machine
running the JobManager. The logs accessible through "yarn logs" are the
same as you would see in the JM interface.

Best,
Robert



On Sun, Mar 29, 2020 at 11:22 PM Vitaliy Semochkin <vi...@gmail.com>
wrote:

> Hello Yun,
>
> I see this error reported by:
> *org.apache.flink.runtime.webmonitor.WebMonitorUtils*  - *JobManager log
> files are unavailable in the web dashboard. Log file location not found in
> environment variable 'log.file' or configuration key 'Key: 'web.log.path' ,
> default: null (fallback keys: [{key=jobmanager.web.log.path,
> isDeprecated=true}])'.*
>
> I wonder where the JobManager files are stored in case running on a YARN
> cluster?
> Are these logs same to those I get via yarn logs -applicationId?
>
> Regards,
> Vitaliy
>
>
>
> On Sun, Mar 29, 2020 at 8:24 PM Yun Tang <my...@live.com> wrote:
>
>> Hi Vitaliy
>>
>> Property of 'log.file' would be configured if you have uploaded
>> 'logback.xml' or 'log4j.properties' [1].
>> The file would contain logs of job manager or task manager which is
>> decided by the component itself. And as you can see, this is only a local
>> file path, I am afraid this cannot understand hdfs paths.
>>
>>
>> [1]
>> https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420
>>
>> Best
>> Yun Tang
>> ------------------------------
>> *From:* Vitaliy Semochkin <vi...@gmail.com>
>> *Sent:* Sunday, March 29, 2020 4:32
>> *To:* user <us...@flink.apache.org>
>> *Subject:* Log file environment variable 'log.file' is not set.
>>
>> Hi,
>>
>> When I launch Flink Application Cluster I keep getting a message
>> " Log file environment variable 'log.file' is not set."
>>
>> I use console logging via log4j
>> and I read logs via yarn logs -applicationId ....
>>
>> What's the purpose of log.file property?
>> What this file will contain and on which host should I search for the log?
>> Does this property understands hdfs paths?
>>
>> Regards,
>> Vitaliy
>>
>

Re: Log file environment variable 'log.file' is not set.

Posted by Vitaliy Semochkin <vi...@gmail.com>.
Hello Yun,

I see this error reported by:
*org.apache.flink.runtime.webmonitor.WebMonitorUtils*  - *JobManager log
files are unavailable in the web dashboard. Log file location not found in
environment variable 'log.file' or configuration key 'Key: 'web.log.path' ,
default: null (fallback keys: [{key=jobmanager.web.log.path,
isDeprecated=true}])'.*

I wonder where the JobManager files are stored in case running on a YARN
cluster?
Are these logs same to those I get via yarn logs -applicationId?

Regards,
Vitaliy



On Sun, Mar 29, 2020 at 8:24 PM Yun Tang <my...@live.com> wrote:

> Hi Vitaliy
>
> Property of 'log.file' would be configured if you have uploaded
> 'logback.xml' or 'log4j.properties' [1].
> The file would contain logs of job manager or task manager which is
> decided by the component itself. And as you can see, this is only a local
> file path, I am afraid this cannot understand hdfs paths.
>
>
> [1]
> https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420
>
> Best
> Yun Tang
> ------------------------------
> *From:* Vitaliy Semochkin <vi...@gmail.com>
> *Sent:* Sunday, March 29, 2020 4:32
> *To:* user <us...@flink.apache.org>
> *Subject:* Log file environment variable 'log.file' is not set.
>
> Hi,
>
> When I launch Flink Application Cluster I keep getting a message
> " Log file environment variable 'log.file' is not set."
>
> I use console logging via log4j
> and I read logs via yarn logs -applicationId ....
>
> What's the purpose of log.file property?
> What this file will contain and on which host should I search for the log?
> Does this property understands hdfs paths?
>
> Regards,
> Vitaliy
>

Re: Log file environment variable 'log.file' is not set.

Posted by Yun Tang <my...@live.com>.
Hi Vitaliy

Property of 'log.file' would be configured if you have uploaded 'logback.xml' or 'log4j.properties' [1].
The file would contain logs of job manager or task manager which is decided by the component itself. And as you can see, this is only a local file path, I am afraid this cannot understand hdfs paths.


[1] https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420

Best
Yun Tang
________________________________
From: Vitaliy Semochkin <vi...@gmail.com>
Sent: Sunday, March 29, 2020 4:32
To: user <us...@flink.apache.org>
Subject: Log file environment variable 'log.file' is not set.

Hi,

When I launch Flink Application Cluster I keep getting a message
" Log file environment variable 'log.file' is not set."

I use console logging via log4j
and I read logs via yarn logs -applicationId ....

What's the purpose of log.file property?
What this file will contain and on which host should I search for the log?
Does this property understands hdfs paths?

Regards,
Vitaliy