# log\_file variable in ftp.bro

**URL:** <https://community.zeek.org/t/log-file-variable-in-ftp-bro/593>\
**Category:** Zeek\
**Created:** [September 23, 2004, 3:03pm UTC](https://community.zeek.org/t/log-file-variable-in-ftp-bro/593 "2004-09-23T15:03:13Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Vern](https://yyz1.discourse-cdn.com/flex011/user_avatar/community.zeek.org/vern/32/630_2.png) [@Vern](https://community.zeek.org/u/Vern)\
**Post date:** [September 23, 2004, 3:03pm UTC](https://community.zeek.org/t/log-file-variable-in-ftp-bro/593/1 "2004-09-23T15:03:13Z")

</div>

> I think Vern meant to say "module FTP" and  
> &nbsp;&nbsp;  
> &nbsp;&nbsp;redef FTP::log\_file = open\_log\_file("comex");

Yep, thanks! Hazards of sending email before one's morning coffee ...

&nbsp;&nbsp;&nbsp;&nbsp;Vern

---

<div class="post-metadata">

**Author:** ![Cliff](https://avatars.discourse-cdn.com/v4/letter/c/b38774/32.png) [@Cliff](https://community.zeek.org/u/Cliff)\
**Post date:** [September 24, 2004, 1:53am UTC](https://community.zeek.org/t/log-file-variable-in-ftp-bro/593/2 "2004-09-24T01:53:46Z")

</div>

Hi Vern/Christian,  
&nbsp;&nbsp;&nbsp;&nbsp;Ya,It's Ok to modify the script as what you said.I see that this is the result from "scope" used in ftp.bro.  
&nbsp;&nbsp;&nbsp;&nbsp;However,I don't understand that Why to import the concept of "scope" and "module" such as "module FTP" in ftp.bro and "module HTTP" in http.bro? What advantages has it?

Thanks,  
Cliff

---

<div class="post-metadata">

**Author:** ![Christian\_Kreibich3](https://avatars.discourse-cdn.com/v4/letter/c/4af34b/32.png) [@Christian\_Kreibich3](https://community.zeek.org/u/Christian_Kreibich3)\
**Post date:** [September 24, 2004, 9:25am UTC](https://community.zeek.org/t/log-file-variable-in-ftp-bro/593/3 "2004-09-24T09:25:07Z")

</div>

It's just to have a concept of namespaces -- in a large policy  
configuration there's a good chance that symbol names (for variables,  
functions etc) would collide. The module and export statements allow you  
to control how much pollution you cause in other modules. Also it's much  
nicer if you don't have to think all the time about whether a symbol  
name might already exist in another module.

Cheers,  
Christian.

---

<div class="post-metadata">

**Author:** ![Cliff](https://avatars.discourse-cdn.com/v4/letter/c/b38774/32.png) [@Cliff](https://community.zeek.org/u/Cliff)\
**Post date:** [September 27, 2004, 1:38am UTC](https://community.zeek.org/t/log-file-variable-in-ftp-bro/593/4 "2004-09-27T01:38:04Z")

</div>

Hi Christian,  
&nbsp;&nbsp;&nbsp;&nbsp;Very thank you for your detailed explanation. 🙂  
&nbsp;&nbsp;&nbsp;&nbsp;The concept of "scope" is the same with the "namespace" of C++.

Thanks,  
Cliff

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex011/uploads/zeek/original/1X/f09d732bc2cc7c7cc7e35db67cf4e1d5233ce7a7.png) [@system](https://community.zeek.org/u/system)\
**Post date:** [May 6, 2022, 3:37pm UTC](https://community.zeek.org/t/log-file-variable-in-ftp-bro/593/5 "2022-05-06T15:37:10Z")

</div>


