Programming :: Apache Use Syslog Or Use Own Library?
Jan 24, 2010
in the directory of /var/log , i see some directory like apache2 , apt , gdm , i wonder does all these folders was made under the syslogd ? i mean do these utilities use syslogd to log their messages or they use their own systems , for example apache use syslog or use its own library?
I am running a syslogd on my ubuntu 10.10 system. I have a apache2 server on the same machine. I have configured my apache2.conf file to send the error logs to the local syslog server.
The config is as under :- LogLevel notice ErrorLog syslog:local1
I have also configured the /etc/syslog.conf as under :- local1.info /var/log/apache2/error_logs
I have created a file in the /var/log/apache2 dir with the ownerships and permissions as under:- -rwxrwxrwx 1 syslog adm 77 2011-08-11 18:14 /var/log/apache2/error_logs
Next I restarted the sysklogd and apache2 servers with a service command as under:- sudo service sysklogd restart sudo service apache2 restart
I thereafter observed the /var/log/apache2/error_logs file and found the entries for apache2 closing down and coming up as under:- Aug 11 18:14:14 cc apache2[4940]: [notice] caught SIGTERM, shutting down Aug 11 18:14:19 cc apache2[5282]: [notice] ModSecurity for Apache/2.5.12 [URL] configured. Aug 11 18:14:19 cc apache2[5282]: [notice] Original server signature: Apache/2.2.16 (Ubuntu) mod_ssl/2.2.16 OpenSSL/0.9.8o Aug 11 18:14:20 cc apache2[5285]: [notice] Apache/2.2.16 (Ubuntu) mod_ssl/2.2.16 OpenSSL/0.9.8o Microsoft-IIS/5.0 configured -- resuming normal operations
Now the problem is I donot get any other messages thereafter. So it is hardly useful. How can I increase the logged messages from apache. I tried the facility: local1.*
Then restarted the sysklogd and apache2, but the contents of the /var/log/error_logs file remained similar. Next, I followed the link. I created the perl script for recording access logs of apache2. I then restarted the apache2 and sysklogd. when I opened my website from a browser, the access log did not work. I think I am getting something wrong with the facility value , in apache2.conf it is ErrorLog syslog:local1 ! but the script is suggesting that it should be local2 in the line 4 openlog('apache','cons','pid','local2'); I therefore changed the script to local1 in above line. But still no access log?
I'm reading about shared, static, and dynamic libraries. What is SDL? Is it static, shared, or dynamic?
I always thought a library would be a lot of .h and .cpp files compiled separately into .o files and then if you compiled your own program you could use the -l parameter to link the library and it was all compiled together. Now I'm not so sure.
I don't even see any SDL .cpp files in my system anywhere. All I have are lots of SDL .h files in /usr/include/SDL and I don't really understand the code in them.
I'm making a wild guess here: SDL is a shared library. SDL itself is NOT compiled into my program, therefore SDL must be on any system my program tries to run on. When I compile and link SDL all it needs is the header files to know what SDL function and objects it can use. And then on every system it uses an already compiled SDL shared library thingy somewhere.
So... where is that part of SDL? All I can find are header files.
I'm thinking the advantage of shared libraries is that someone could say update SDL on their own system and take advantage of the new features without having to download new executables with the new version of SDL compiled into them for every program that uses SDL.
So if I'm making an editor and a game engine and they both use a lot of the same .cpp and .h files that I wrote and I'm tired of updating one and then the other and I need to turn them into a library, then a shared library might be kind of a silly solution. I could just make a static library. Right? Because it's not SDL. Nobody else is ever going to use this library.
How can we convert a dynamic library (filename.so) to a static library (filename.a) using gnu gcc . Can we get a static library form a dynamic library . I saw a few post in which the conversion form a static library to a dynamic library is mentioned but, unfortunately, not the other way.
I am looking for an open source syslog server which accumulate the each and every log of Windows, Solaris, Linux and network devices. Currently I am using Syslog-ng which is not fulfiling my requirement in Windows clients, as I need the logs of every action which user performed after logon.
I want read the log messages to my 'c' application , i am using the fedora core 8 operating system , how to read the system log messages(syslog) through my application.
I've got a cisco error log which is pulled and mailed out via the following code (values are written to a mysql db). I really need to make the IP's in the second column hostnames,I don't really know how to start.I'll paste the code I've got and someone can come up with a bright idea
I am trying to generate a UDP syslog packet from my C application. But I am facing a problem with a Cisco Router ACE that does not like the Source Port being '0' and thus drops the packet.How can I specify the Source Port in the UDP header to '514' as stated in RFC3164 (Section 2: Transport Layer Protocol)? "It is RECOMMENDED that the source port also be 514 to indicate that the message is from the syslog process of the sender"
wants to remove everything else that (presumably) has syslog as a dependency. how do I replace the dependency on syslog with a dependency on syslog-ng?
I noticed in my system that my root partition is getting full. I found a lot of old compacted syslogfiles. Had a look at etc/sysconfig editor eg cron but could not find a setting which allows to delete files older than a month. Where and how could I influence this ? I deleted manually all syslog files older than a month. Approx 6GB
How to make simple games (snake, pong... nothing too fancy). I have completed making snake and now want to be able to distribute it. I built it using C++ and wxWidgets so it would be multi-platform. I'm able to compile it and run it in both Windows and Ubuntu using g++. In windows, I was able to distribute it by putting a *.dll file in the same folder as the executable. However in Linux, I don't understand what I need to do so that it would run on any installation of Ubuntu out of the "box". When I build it and try to run it in a different installation of Ubuntu (which has g++) it gives me an error saying that a particular library file was not found and Getlibs fails to find that library file.
Is there a way to build a project with G++ so that all the dependencies are either packaged in the executables or copied into the folder....?
I'm trying to make one that has some sorts in it for now. I know you have to make a header file and a .cpp file. I'm using VC++(yes, I'm in school so windows in needed. I use Ubuntu at home I swear D if it makes a difference. What goes in the header file, how is the cpp file set up, and then where do I put the files once I'm done?
i have a code written in c..for which i was trying to create a gui using Gtk+.but now i want to use qt4 for the same purpose but native language of qt4 is C++. i have to do library binding for my C code to develop a gui using qt4.
I am trying to write a program that can get the times from files on a NTFS drive in Linux using the ntfs-3g library. I have installed the development libraries and source on my Fedora 10 machine. I can find the headers in the /usr/include/ntfs-3g directory but when i try and compile my program I am getting an undefind reference to ntfs_mount() call. I have the following in my link string
g++ -L/lib -o ProgramName -lpthread -lntfs-3g
I did a pkg-config --cflags --libs libntfs-3g and it said all i needed was the -L/lib -lpthread and -lntfs-3g.
To create a static library, or to add additional objectiles to an existing static library, I can use a command like this:ar rcs my_library.a file1.o file2.oBut how to add an existing static library to my own static library. I have created my own static library using the command above and want to link against the library libuuid.a (placed in /usr/lib/).
I jus found that #include<stdio.h> is not working with gcc and neither any function from the library like clrscr(); i found due to <stdio.h> is a windows lobrary file so its not come with linux. But I want to to know if I have to call any function from that library what should I do? Is there any way to install <stdio.h> in linux?
Where are the definitions for C library functions located? It was just recently that I realized that header files don't actually define any functions, they merely include their prototypes.
For instance, stdio.h includes the following line:
Code:
This just means that the definition of printf() is located in another file. What file? Is there some kind of default shared object file that is automatically included during compilation?
I'm trying to learn how to cross-compile libraries (static and shared) and executables for the Blackfin + uClinux environment.At this point, I can successfully compile a stand-alone "Hello, world" but fail when trying to add a (static) library to the mix.Here's the source code I wrote:
I have visited these boards a few times, but never posted. Here's my problem: I was given the source to a program and asked to get it running on a 64-bit Debian 2.6.26 machine. Currently it is working on 2 64-bit OpenSUSE machines.
The application uses TCL TK for a GUI and everything compiles just fine; however, on startup, the user must enter one of three possible modules to load; when attempting to load these modules (tcl 'load' function), I receive this error:
Code: Error in startup script: couldn't load file "../Build/libMpf.so": libTransReaders.so: cannot open shared object file: No such file or directory while executing "load ../Build/libMpf.so Mpf" ("eval" body line 1) invoked from within "eval load ../Build/${px}${i}${sx} $i"
is there a way to debug my library files from DDD? Basically a way to pass the paths to DDD so I can view the source etc. I'm having a segmentation nightmare, which only crops up about every 10 or so starts, I know it's in one file in a library. I could move the source file into my general code to debug, but am sure there's a way in DDD.
I need to create a software library with two copy file routines in it. This library will be used in a TCL script. I know how to write the routines, but I have never created a library before. How do I do this?
I am trying to use the QT4 frontend of poppler library in my application so I need to compile the library.In its main directory ./configure can be run but I got
Code:
checking which font configuration to use... fontconfig checking for FONTCONFIG... no configure: error: Package requirements (fontconfig >= 2.0.0) were not met: No package 'fontconfig' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables FONTCONFIG_CFLAGS and FONTCONFIG_LIBS to avoid the need to call pkg-config.See the pkg-config man page for more details.
I have fontconfig installed (ubuntu):
2.8.0-2.1ubuntu3 (fontconfig)
However I have no idea where those flags are and what to set them to.
If we have a .so library elf in linux, will it be possible to find out the APIs supported by it. Or in other words, the functions that can be used along with the argument types and return type.? Note that we dont have any other header files or documentations related to the library.
I am running on windows, i don't have strlcpy() function as it's not a standard function, so i want to add it to my library, i know how to do that thankfully ^_^This is the function: