<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:#1F497D">Some more details, I tried running with python3 and the error I got with it is a bit more detailed:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{"asctime": "2018-06-20 07:06:11.537","process": "24","levelname": "ERROR","name": "ceilometer.pipeline", "instance": {},"message":"Unable to load publisher panko://"}: tenacity.RetryError: RetryError[<Future
 at 0x7f12143afa20 state=finished raised NoSuchOptError>]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>Traceback (most recent call last):<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/tenacity/__init__.py", line 251, in call<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    result = fn(*args, **kwargs)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/panko/storage/__init__.py", line 71, in _inner<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    return get_connection(url, conf)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/panko/storage/__init__.py", line 86, in get_connection<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    return mgr.driver(url, conf)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/panko/storage/impl_elasticsearch.py", line 74, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    use_ssl = conf.database.es_ssl_enabled<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/oslo_config/cfg.py", line 3363, in __getattr__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    return self._conf._get(name, self._group)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/oslo_config/cfg.py", line 2925, in _get<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    value = self._do_get(name, group, namespace)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/oslo_config/cfg.py", line 2942, in _do_get<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    info = self._get_opt_info(name, group)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/oslo_config/cfg.py", line 3099, in _get_opt_info<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    raise NoSuchOptError(opt_name, group)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>oslo_config.cfg.NoSuchOptError: no such option es_ssl_enabled in group [database]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>The above exception was the direct cause of the following exception:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>Traceback (most recent call last):<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/ceilometer/pipeline.py", line 419, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    self.publishers.append(publisher_manager.get(p))<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/ceilometer/pipeline.py", line 713, in get<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    'ceilometer.%s.publisher' % self._purpose)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/ceilometer/publisher/__init__.py", line 36, in get_publisher<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    return loaded_driver.driver(parse_result)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/panko/publisher/database.py", line 35, in __init__<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    self.conn = storage.get_connection_from_config(conf)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/panko/storage/__init__.py", line 73, in get_connection_from_config<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    return _inner()<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/tenacity/__init__.py", line 171, in wrapped_f<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    return self.call(f, *args, **kw)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/tenacity/__init__.py", line 248, in call<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    start_time=start_time)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python3.5/site-packages/tenacity/__init__.py", line 217, in iter<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>    six.raise_from(RetryError(fut), fut.exception())<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>  File "<string>", line 2, in raise_from<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>>tenacity.RetryError: RetryError[<Future at 0x7f12143afa20 state=finished raised NoSuchOptError>]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">2018-06-20 07:06:11.537 24 TRACE ceilometer.pipeline  >>>>><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">I changed my panko.conf to:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">[database]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">connection = es://user:password@elasticsearch.service.consul.:9200<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">es_ssl_enable = False<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">[storage]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">es_index_name = events<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">But I get the same error which means that the es_* parameters are not properly merged from panko.conf when ceilometer-agent-notification starts up.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> cristian.calin@orange.com [mailto:cristian.calin@orange.com]
<br>
<b>Sent:</b> Wednesday, June 20, 2018 9:44 AM<br>
<b>To:</b> openstack-operators@lists.openstack.org<br>
<b>Cc:</b> openstack-dev@lists.openstack.org<br>
<b>Subject:</b> [openstack-dev] [ceilometer][panko][pike] elasticsearch integration<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Hello,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I’m trying to run ceilometer with panko publishers in pike release and when I run the ceilometer-agent-notification I get a trace complaining about NoSuchOptError, but without the actual parameter that is missing (see trace below).<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I have configured panko.conf with the following:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">[database]<o:p></o:p></p>
<p class="MsoNormal">connection = es://user:password@elasticsearch.service.consul.:9200<o:p></o:p></p>
<p class="MsoNormal">[storage]<o:p></o:p></p>
<p class="MsoNormal">es_ssl_enable = False<o:p></o:p></p>
<p class="MsoNormal">es_index_name = events<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">As far as I  can tell from the debug log, the storage.es_ssl_enable and storage.es_index_name parameters are not loaded, they don’t show up in the “cotyledon.oslo_config_glue” output so I assume the trace relates to these parameters. Has
 anybody else seen this error before?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">PS: sorry for CC’ing the dev list but I hope to reach the right audience<o:p></o:p></p>
<p class="MsoNormal">================ TRACE ====================<o:p></o:p></p>
<p class="MsoNormal">{"asctime": "2018-06-20 05:49:09.405","process": "59","levelname": "DEBUG","name": "panko.storage", "instance": {},"message":"looking for 'es' driver in panko.storage"} {"funcName": "get_connection","source": {"p<o:p></o:p></p>
<p class="MsoNormal">ath": "/opt/ceilometer/lib/python2.7/site-packages/panko/storage/__init__.py","lineno": "84"}}<o:p></o:p></p>
<p class="MsoNormal">{"asctime": "2018-06-20 05:49:10.436","process": "61","levelname": "DEBUG","name": "panko.storage", "instance": {},"message":"looking for 'es' driver in panko.storage"} {"funcName": "get_connection","source": {"p<o:p></o:p></p>
<p class="MsoNormal">ath": "/opt/ceilometer/lib/python2.7/site-packages/panko/storage/__init__.py","lineno": "84"}}<o:p></o:p></p>
<p class="MsoNormal">{"asctime": "2018-06-20 05:49:11.409","process": "63","levelname": "DEBUG","name": "panko.storage", "instance": {},"message":"looking for 'es' driver in panko.storage"} {"funcName": "get_connection","source": {"p<o:p></o:p></p>
<p class="MsoNormal">ath": "/opt/ceilometer/lib/python2.7/site-packages/panko/storage/__init__.py","lineno": "84"}}<o:p></o:p></p>
<p class="MsoNormal">{"asctime": "2018-06-20 05:49:18.467","process": "57","levelname": "DEBUG","name": "panko.storage", "instance": {},"message":"looking for 'es' driver in panko.storage"} {"funcName": "get_connection","source": {"p<o:p></o:p></p>
<p class="MsoNormal">ath": "/opt/ceilometer/lib/python2.7/site-packages/panko/storage/__init__.py","lineno": "84"}}<o:p></o:p></p>
<p class="MsoNormal">{"asctime": "2018-06-20 05:49:18.468","process": "57","levelname": "ERROR","name": "ceilometer.pipeline", "instance": {},"message":"Unable to load publisher panko://"}: RetryError: RetryError[<Future at 0x7f89c55<o:p></o:p></p>
<p class="MsoNormal">f7ed0 state=finished raised NoSuchOptError>]<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>Traceback (most recent call last):<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/ceilometer/pipeline.py", line 419, in __init__<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    self.publishers.append(publisher_manager.get(p))<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/ceilometer/pipeline.py", line 713, in get<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    'ceilometer.%s.publisher' % self._purpose)<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/ceilometer/publisher/__init__.py", line 36, in get_publisher<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    return loaded_driver.driver(parse_result)<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/panko/publisher/database.py", line 35, in __init__<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    self.conn = storage.get_connection_from_config(conf)<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/panko/storage/__init__.py", line 73, in get_connection_from_config<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    return _inner()<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/tenacity/__init__.py", line 171, in wrapped_f<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    return self.call(f, *args, **kw)<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/tenacity/__init__.py", line 248, in call<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    start_time=start_time)<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/tenacity/__init__.py", line 217, in iter<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    six.raise_from(RetryError(fut), fut.exception())<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>  File "/opt/ceilometer/lib/python2.7/site-packages/six.py", line 718, in raise_from<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>    raise value<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>>RetryError: RetryError[<Future at 0x7f89c55f7ed0 state=finished raised NoSuchOptError>]<o:p></o:p></p>
<p class="MsoNormal">2018-06-20 05:49:18.468 57 TRACE ceilometer.pipeline  >>>>><o:p></o:p></p>
<pre>_________________________________________________________________________________________________________________________<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc<o:p></o:p></pre>
<pre>pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler<o:p></o:p></pre>
<pre>a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,<o:p></o:p></pre>
<pre>Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.<o:p></o:p></pre>
<pre><o:p> </o:p></pre>
<pre>This message and its attachments may contain confidential or privileged information that may be protected by law;<o:p></o:p></pre>
<pre>they should not be distributed, used or copied without authorisation.<o:p></o:p></pre>
<pre>If you have received this email in error, please notify the sender and delete this message and its attachments.<o:p></o:p></pre>
<pre>As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.<o:p></o:p></pre>
<pre>Thank you.<o:p></o:p></pre>
</div>
<PRE>_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.

This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.
</PRE></body>
</html>